From 3ed544106777af0d96b9190468b0823f9d481d0e Mon Sep 17 00:00:00 2001 From: NeroBurner Date: Thu, 10 Jan 2019 14:47:19 +0100 Subject: [PATCH] fix ctest output with space before name When PARSE_CATCH_TESTS_ADD_TARGET_IN_TEST_NAME is enabled the cmake helper script fails to extract the testcase name if a whitespace is before the name string. Use regex to consider and remove this whitespace. fix by Mike-Devel fixes: https://github.com/catchorg/Catch2/issues/1493 --- contrib/ParseAndAddCatchTests.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contrib/ParseAndAddCatchTests.cmake b/contrib/ParseAndAddCatchTests.cmake index e7c64f01..ec1d775e 100644 --- a/contrib/ParseAndAddCatchTests.cmake +++ b/contrib/ParseAndAddCatchTests.cmake @@ -109,7 +109,7 @@ function(ParseFile SourceFile TestTarget) # Get test type and fixture if applicable string(REGEX MATCH "(CATCH_)?(TEST_CASE_METHOD|SCENARIO|TEST_CASE)[ \t]*\\([^,^\"]*" TestTypeAndFixture "${TestName}") string(REGEX MATCH "(CATCH_)?(TEST_CASE_METHOD|SCENARIO|TEST_CASE)" TestType "${TestTypeAndFixture}") - string(REPLACE "${TestType}(" "" TestFixture "${TestTypeAndFixture}") + string(REGEX REPLACE "${TestType}\\([ \t]*" "" TestFixture "${TestTypeAndFixture}") # Get string parts of test definition string(REGEX MATCHALL "\"+([^\\^\"]|\\\\\")+\"+" TestStrings "${TestName}")