1#!/usr/bin/env python
2
3import sys
4
5if len(sys.argv) != 2:
6    raise ValueError("unexpected number of args")
7
8if sys.argv[1] == "--gtest_list_tests":
9    print("""\
10Running main() from gtest_main.cc
11FirstTest.
12  subTestA
13  subTestB
14ParameterizedTest/0.
15  subTest
16ParameterizedTest/1.
17  subTest""")
18    sys.exit(0)
19elif not sys.argv[1].startswith("--gtest_filter="):
20    raise ValueError("unexpected argument: %r" % (sys.argv[1]))
21
22test_name = sys.argv[1].split('=',1)[1]
23print('Running main() from gtest_main.cc')
24if test_name == 'FirstTest.subTestA':
25    print('I am subTest A, I PASS')
26    print('[  PASSED  ] 1 test.')
27    sys.exit(0)
28elif test_name == 'FirstTest.subTestB':
29    print('I am subTest B, I FAIL')
30    print('And I have two lines of output')
31    sys.exit(1)
32elif test_name in ('ParameterizedTest/0.subTest',
33                   'ParameterizedTest/1.subTest'):
34    print('I am a parameterized test, I also PASS')
35    print('[  PASSED  ] 1 test.')
36    sys.exit(0)
37else:
38    raise SystemExit("error: invalid test name: %r" % (test_name,))
39