summaryrefslogtreecommitdiffstats
path: root/llvm/utils/lit/tests/Inputs/googletest-format/DummySubDir/OneTest.py
diff options
context:
space:
mode:
authorReid Kleckner <rnk@google.com>2017-07-28 01:05:55 +0000
committerReid Kleckner <rnk@google.com>2017-07-28 01:05:55 +0000
commit4ca8d21ef371fc7caacd32fbd6af81dfea3f23c9 (patch)
tree7b2d8595cb0c0f676a0bfd75422ef30681a74dab /llvm/utils/lit/tests/Inputs/googletest-format/DummySubDir/OneTest.py
parente70a472bad63666ce16a68947352806d07294015 (diff)
downloadbcm5719-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.py36
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,))
OpenPOWER on IntegriCloud