OLD | NEW |
1 # Copyright (c) 2012 Google Inc. All rights reserved. | 1 # Copyright (c) 2012 Google Inc. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 """ | 5 """ |
6 TestGyp.py: a testing framework for GYP integration tests. | 6 TestGyp.py: a testing framework for GYP integration tests. |
7 """ | 7 """ |
8 | 8 |
9 import collections | 9 import collections |
10 from contextlib import contextmanager | 10 from contextlib import contextmanager |
(...skipping 1032 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1043 # Work around spurious stderr output from Xcode 4, http://crbug.com/181012 | 1043 # Work around spurious stderr output from Xcode 4, http://crbug.com/181012 |
1044 match = kw.pop('match', self.match) | 1044 match = kw.pop('match', self.match) |
1045 def match_filter_xcode(actual, expected): | 1045 def match_filter_xcode(actual, expected): |
1046 if actual: | 1046 if actual: |
1047 if not TestCmd.is_List(actual): | 1047 if not TestCmd.is_List(actual): |
1048 actual = actual.split('\n') | 1048 actual = actual.split('\n') |
1049 if not TestCmd.is_List(expected): | 1049 if not TestCmd.is_List(expected): |
1050 expected = expected.split('\n') | 1050 expected = expected.split('\n') |
1051 actual = [a for a in actual | 1051 actual = [a for a in actual |
1052 if 'No recorder, buildTask: <Xcode3BuildTask:' not in a and | 1052 if 'No recorder, buildTask: <Xcode3BuildTask:' not in a and |
1053 'Beginning test session' not in a] | 1053 'Beginning test session' not in a and |
| 1054 'Writing diagnostic log' not in a and |
| 1055 'Session-tests-' not in a] |
1054 return match(actual, expected) | 1056 return match(actual, expected) |
1055 kw['match'] = match_filter_xcode | 1057 kw['match'] = match_filter_xcode |
1056 | 1058 |
1057 return self.run(program=self.build_tool, **kw) | 1059 return self.run(program=self.build_tool, **kw) |
1058 def up_to_date(self, gyp_file, target=None, **kw): | 1060 def up_to_date(self, gyp_file, target=None, **kw): |
1059 """ | 1061 """ |
1060 Verifies that a build of the specified Xcode target is up to date. | 1062 Verifies that a build of the specified Xcode target is up to date. |
1061 """ | 1063 """ |
1062 result = self.build(gyp_file, target, **kw) | 1064 result = self.build(gyp_file, target, **kw) |
1063 if not result: | 1065 if not result: |
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1182 | 1184 |
1183 def TestGyp(*args, **kw): | 1185 def TestGyp(*args, **kw): |
1184 """ | 1186 """ |
1185 Returns an appropriate TestGyp* instance for a specified GYP format. | 1187 Returns an appropriate TestGyp* instance for a specified GYP format. |
1186 """ | 1188 """ |
1187 format = kw.pop('format', os.environ.get('TESTGYP_FORMAT')) | 1189 format = kw.pop('format', os.environ.get('TESTGYP_FORMAT')) |
1188 for format_class in format_class_list: | 1190 for format_class in format_class_list: |
1189 if format == format_class.format: | 1191 if format == format_class.format: |
1190 return format_class(*args, **kw) | 1192 return format_class(*args, **kw) |
1191 raise Exception, "unknown format %r" % format | 1193 raise Exception, "unknown format %r" % format |
OLD | NEW |