Upstream version 10.38.222.0
[platform/framework/web/crosswalk.git] / src / tools / swarming_client / googletest / tests / gtest_fake / gtest_fake_flaky.py
1 #!/usr/bin/env python
2 # Copyright 2013 The Swarming Authors. All rights reserved.
3 # Use of this source code is governed under the Apache License, Version 2.0 that
4 # can be found in the LICENSE file.
5
6 """Simulate a flaky 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': [
19     'Bar1', 'Bar2', 'Bar3', 'Bar4', 'Bar5', 'Bar6', 'Bar7', 'Bar8', 'Bar9',
20   ],
21 }
22
23
24 def main():
25   test_cases, args = gtest_fake_base.parse_args(TESTS, 1)
26   temp_dir = args[0]
27
28   result = 0
29   for test_case in test_cases:
30     filename = os.path.join(temp_dir, test_case)
31     # Fails on first run, succeeds on the second.
32     should_fail = not os.path.isfile(filename)
33     result = result or int(should_fail)
34     print gtest_fake_base.get_test_output(test_case, should_fail)
35     if should_fail:
36       with open(filename, 'wb') as f:
37         f.write('bang')
38   print gtest_fake_base.get_footer(len(test_cases), len(test_cases))
39   return result
40
41
42 if __name__ == '__main__':
43   sys.exit(main())