Chromium Code Reviews| Index: test/cctest/testcfg.py | 
| =================================================================== | 
| --- test/cctest/testcfg.py (revision 1212) | 
| +++ test/cctest/testcfg.py (working copy) | 
| @@ -36,27 +36,37 @@ | 
| class CcTestCase(test.TestCase): | 
| - def __init__(self, path, executable, mode, raw_name, context): | 
| + def __init__(self, path, executable, mode, raw_name, dependency, context): | 
| super(CcTestCase, self).__init__(context, path) | 
| self.executable = executable | 
| self.mode = mode | 
| self.raw_name = raw_name | 
| + self.dependency = dependency | 
| def GetLabel(self): | 
| return "%s %s %s" % (self.mode, self.path[-2], self.path[-1]) | 
| def GetName(self): | 
| return self.path[-1] | 
| - | 
| - def GetCommand(self): | 
| + | 
| + def BuildCommand(self, name): | 
| serialization_file = join('obj', 'test', self.mode, 'serdes') | 
| serialization_option = '--testing_serialization_file=' + serialization_file | 
| - result = [ self.executable, self.raw_name, serialization_option ] | 
| + result = [ self.executable, name, serialization_option ] | 
| if self.mode == 'debug': | 
| result += DEBUG_FLAGS | 
| return result | 
| + def GetCommand(self): | 
| + return self.BuildCommand(self.raw_name) | 
| + | 
| + def Run(self): | 
| + if self.dependency != '': | 
| + dependent_command = self.BuildCommand(self.dependency) | 
| + self.RunCommand(dependent_command) | 
| 
 
Christian Plesner Hansen
2009/02/03 08:21:16
Consider checking that this command didn't fail an
 
olehougaard
2009/02/03 08:34:26
Done
 
 | 
| + return test.TestCase.Run(self) | 
| + | 
| class CcTestConfiguration(test.TestConfiguration): | 
| def __init__(self, context, root): | 
| @@ -75,10 +85,14 @@ | 
| print output.stderr | 
| return [] | 
| result = [] | 
| - for raw_test in output.stdout.strip().split(): | 
| - full_path = current_path + raw_test.split('/') | 
| + for test_desc in output.stdout.strip().split(): | 
| + raw_test, dependency = test_desc.split('<') | 
| + relative_path = raw_test.split('/') | 
| + full_path = current_path + relative_path | 
| + if dependency != '': | 
| + dependency = relative_path[0] + '/' + dependency | 
| if self.Contains(path, full_path): | 
| - result.append(CcTestCase(full_path, executable, mode, raw_test, self.context)) | 
| + result.append(CcTestCase(full_path, executable, mode, raw_test, dependency, self.context)) | 
| return result | 
| def GetTestStatus(self, sections, defs): |