| OLD | NEW |
| (Empty) |
| 1 #!/usr/bin/env python | |
| 2 # Copyright 2013 The Chromium Authors. All rights reserved. | |
| 3 # Use of this source code is governed by a BSD-style license that can be | |
| 4 # found in the LICENSE file. | |
| 5 | |
| 6 """Simulate a crashing-after-pass google-test executable. | |
| 7 | |
| 8 http://code.google.com/p/googletest/ | |
| 9 """ | |
| 10 | |
| 11 import os | |
| 12 import sys | |
| 13 | |
| 14 import gtest_fake_base | |
| 15 | |
| 16 | |
| 17 TESTS = { | |
| 18 'Foo': ['Bar1', 'Bar2'], | |
| 19 } | |
| 20 | |
| 21 | |
| 22 def main(): | |
| 23 test_cases, args = gtest_fake_base.parse_args(TESTS, 1) | |
| 24 temp_dir = args[0] | |
| 25 | |
| 26 result = 0 | |
| 27 for test_case in test_cases: | |
| 28 filename = os.path.join(temp_dir, test_case) | |
| 29 # Fails on first run, succeeds on the second. | |
| 30 should_fail = not os.path.isfile(filename) | |
| 31 # But it still prints it succeeded. | |
| 32 print gtest_fake_base.get_test_output(test_case, False) | |
| 33 result = result or int(should_fail) | |
| 34 if should_fail: | |
| 35 with open(filename, 'wb') as f: | |
| 36 f.write('bang') | |
| 37 print gtest_fake_base.get_footer(len(test_cases), len(test_cases)) | |
| 38 if result: | |
| 39 print('OMG I crashed') | |
| 40 print('Here\'s a stack trace') | |
| 41 return result | |
| 42 | |
| 43 | |
| 44 if __name__ == '__main__': | |
| 45 sys.exit(main()) | |
| OLD | NEW |