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: | David Soria Parra | 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.