From 301ff155a4bc7e2592e5417deceffa86b21f9ecc Mon Sep 17 00:00:00 2001 From: jordanbrauer <18744334+jordanbrauer@users.noreply.github.com> Date: Sat, 13 Feb 2021 11:17:52 -0600 Subject: [PATCH] prevent parse errors by escaping the quote used for filename property --- src/Factories/TestCaseFactory.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/Factories/TestCaseFactory.php b/src/Factories/TestCaseFactory.php index df1c0d2a..77f335d8 100644 --- a/src/Factories/TestCaseFactory.php +++ b/src/Factories/TestCaseFactory.php @@ -170,7 +170,8 @@ final class TestCaseFactory }, $filename); } - $filename = (string) realpath($filename); + $quote = '\''; + $filename = str_replace($quote, sprintf('\\%s', $quote), (string) realpath($filename)); $rootPath = TestSuite::getInstance()->rootPath; $relativePath = str_replace($rootPath . DIRECTORY_SEPARATOR, '', $filename); $relativePath = dirname(ucfirst($relativePath)) . DIRECTORY_SEPARATOR . basename($relativePath, '.php'); @@ -203,7 +204,7 @@ final class TestCaseFactory final class $className extends $baseClass implements $hasPrintableTestCaseClassFQN { $traitsCode - private static \$__filename = '$filename'; + private static \$__filename = $quote$filename$quote; } "); } catch (ParseError $caught) {