From 6bccb4c2373532b972ecf84e8428f800e5e9995f Mon Sep 17 00:00:00 2001 From: Jeffrey Yasskin Date: Sun, 18 Oct 2009 02:05:42 +0000 Subject: [PATCH] Support GoogleTest's "typed tests" (http://code.google.com/p/googletest/wiki/GoogleTestAdvancedGuide#Typed_Tests) in lit.py. These tests have names like "ValueMapTest/0.Iteration", which broke when lit.py os.path.join()ed them onto the path and then assumed it could os.path.split() them back off. This patch shifts path components from the testPath to the testName until the testPath exists. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84387 91177308-0d34-0410-b5e6-96231b3b80d8 --- utils/lit/TestFormats.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/utils/lit/TestFormats.py b/utils/lit/TestFormats.py index 61bdb185355..7e638b47f4d 100644 --- a/utils/lit/TestFormats.py +++ b/utils/lit/TestFormats.py @@ -53,6 +53,10 @@ class GoogleTest(object): def execute(self, test, litConfig): testPath,testName = os.path.split(test.getSourcePath()) + if not os.path.exists(testPath): + # Handle GTest typed tests, whose name includes a '/'. + testPath, namePrefix = os.path.split(testPath) + testName = os.path.join(namePrefix, testName) cmd = [testPath, '--gtest_filter=' + testName] out, err, exitCode = TestRunner.executeCommand(cmd) -- 2.34.1