com phpruntests: Added optional placeholder replacement to rtText. Modified invalidTestFileName error message to include filename as placeholder.:
src/rtText.php src/testgroup/rtPhpTestGroup.php src/testrun/rtPhpTestRun.php src/texts/invalidTestFileName.txt

From: Date: Fri, 24 Apr 2009 08:52:22 +0000
Subject: com phpruntests: Added optional placeholder replacement to rtText. Modified invalidTestFileName error message to include filename as placeholder.:
src/rtText.php src/testgroup/rtPhpTestGroup.php src/testrun/rtPhpTestRun.php src/texts/invalidTestFileName.txt
Groups: php.qa 
Request: Send a blank email to php-qa+get-66535@lists.php.net to get a copy of this message
Commit: dc179766539f1025523a85b78f69a7159965c8de Author: Stefan Priebsch <spriebsch@php.net> Fri, 24 Apr 2009 08:52:22 +0000 Parents: de34dd9091b4f58941c8d90c82ef0583e167e22f Branches: master Link: http://git.php.net/?p=phpruntests.git;a=commitdiff;h=dc179766539f1025523a85b78f69a7159965c8de Log: Added optional placeholder replacement to rtText. Modified invalidTestFileName error message to include filename as placeholder. Changed paths: M src/rtText.php M src/testgroup/rtPhpTestGroup.php M src/testrun/rtPhpTestRun.php M src/texts/invalidTestFileName.txt Diff: diff --git a/src/rtText.php b/src/rtText.php index 886b123..616cd17 100644 --- a/src/rtText.php +++ b/src/rtText.php @@ -1,17 +1,18 @@ <?php - /** * rtText reads named texts from texts/ subdirectory. */ class rtText { /** - * Get a named text from texts/ subdirectory. + * Get a named text from texts/ subdirectory + * and optionally replace placeholders %1 ... %n. * - * @param string $name Text name to return + * @param string $name Text name to return + * @param array $replacements Placeholder replacements * @return string */ - public static function get($name) + public static function get($name, array $replacements = array()) { $filename = dirname(__FILE__) . '/texts/' . $name . '.txt'; @@ -19,7 +20,14 @@ class rtText throw new LogicException('The text ' . $name . ' does not exist'); } - return file_get_contents($filename); + $text = file_get_contents($filename); + + // Replace %1 ... %n by the elements in replacements + for ($i = 0; $i < count($replacements); $i++) { + $text = str_replace('%' . ($i + 1), $replacements[$i], $text); + } + + return $text; } } ?> diff --git a/src/testgroup/rtPhpTestGroup.php b/src/testgroup/rtPhpTestGroup.php index ad2a542..26031ca 100644 --- a/src/testgroup/rtPhpTestGroup.php +++ b/src/testgroup/rtPhpTestGroup.php @@ -22,8 +22,7 @@ class rtPhpTestGroup foreach ($this->testFiles as $testName) { if (!file_exists($testName)) { - echo $testName . " "; - echo rtText::get('invalidTestFileName'); + echo rtText::get('invalidTestFileName', array($testName)); exit(); } diff --git a/src/testrun/rtPhpTestRun.php b/src/testrun/rtPhpTestRun.php index a0122e2..97a8cd8 100644 --- a/src/testrun/rtPhpTestRun.php +++ b/src/testrun/rtPhpTestRun.php @@ -1,4 +1,4 @@ -i<?php +<?php /** * Main class for a test run * @@ -64,8 +64,7 @@ class rtPhpTestRun foreach ($runConfiguration->getSetting('TestFiles') as $testName) { if (!file_exists($testName)) { - echo $testName . " "; - echo rtText::get('invalidTestFileName'); + echo rtText::get('invalidTestFileName', array($testName)); exit(); } diff --git a/src/texts/invalidTestFileName.txt b/src/texts/invalidTestFileName.txt index 118a808..9efa31e 100644 --- a/src/texts/invalidTestFileName.txt +++ b/src/texts/invalidTestFileName.txt @@ -1 +1 @@ -The test file supplied is not a valid phpt test file. +The test file %1 is not a valid phpt test file.

« previous php.qa (#66535) next »