diff options
author | Reid Kleckner <rnk@google.com> | 2017-07-28 01:05:55 +0000 |
---|---|---|
committer | Reid Kleckner <rnk@google.com> | 2017-07-28 01:05:55 +0000 |
commit | 4ca8d21ef371fc7caacd32fbd6af81dfea3f23c9 (patch) | |
tree | 7b2d8595cb0c0f676a0bfd75422ef30681a74dab /llvm/utils/lit/tests/Inputs/googletest-format/DummySubDir/OneTest.py | |
parent | e70a472bad63666ce16a68947352806d07294015 (diff) | |
download | bcm5719-llvm-4ca8d21ef371fc7caacd32fbd6af81dfea3f23c9.tar.gz bcm5719-llvm-4ca8d21ef371fc7caacd32fbd6af81dfea3f23c9.zip |
[lit] Port googletest lit tests to Windows
Summary:
The technique of directly calling subprocess.Popen on a python script
doesn't work on Windows. The executable path of the command must refer
to a valid win32 executable.
Instead, rename all the python scripts masquerading as gtest executables
to have .py extensions, so we can easily detect then and call the python
executable for them. Do this on Linux as well as Windows for
consistency.
The test suite directory names also come out in lower-case on Windows.
We can consider removing that in a later patch. This change just updates
the FileCheck lines to match on Windows.
Fixes PR33933
Reviewers: modocache, mgorny
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D35909
llvm-svn: 309347
Diffstat (limited to 'llvm/utils/lit/tests/Inputs/googletest-format/DummySubDir/OneTest.py')
-rw-r--r-- | llvm/utils/lit/tests/Inputs/googletest-format/DummySubDir/OneTest.py | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/llvm/utils/lit/tests/Inputs/googletest-format/DummySubDir/OneTest.py b/llvm/utils/lit/tests/Inputs/googletest-format/DummySubDir/OneTest.py new file mode 100644 index 00000000000..dd49f025b1f --- /dev/null +++ b/llvm/utils/lit/tests/Inputs/googletest-format/DummySubDir/OneTest.py @@ -0,0 +1,36 @@ +#!/usr/bin/env python + +import sys + +if len(sys.argv) != 2: + raise ValueError("unexpected number of args") + +if sys.argv[1] == "--gtest_list_tests": + print("""\ +FirstTest. + subTestA + subTestB +ParameterizedTest/0. + subTest +ParameterizedTest/1. + subTest""") + sys.exit(0) +elif not sys.argv[1].startswith("--gtest_filter="): + raise ValueError("unexpected argument: %r" % (sys.argv[1])) + +test_name = sys.argv[1].split('=',1)[1] +if test_name == 'FirstTest.subTestA': + print('I am subTest A, I PASS') + print('[ PASSED ] 1 test.') + sys.exit(0) +elif test_name == 'FirstTest.subTestB': + print('I am subTest B, I FAIL') + print('And I have two lines of output') + sys.exit(1) +elif test_name in ('ParameterizedTest/0.subTest', + 'ParameterizedTest/1.subTest'): + print('I am a parameterized test, I also PASS') + print('[ PASSED ] 1 test.') + sys.exit(0) +else: + raise SystemExit("error: invalid test name: %r" % (test_name,)) |