com phpruntests: Added DESCRIPTION and STDIN sections: src/rtClassMap.php src/testcase/preconditions/rtIsSectionImplemented.php
src/testcase/preconditions/rtIsValidSectionName.php src/testcase/rtTestConfiguration.php
src/testcase/sections/configurationsections/rtStdinSection.php src/testcase/sections/executablesections/rtFileSection.php
src/testcase/sections/informationsections/rtDescriptionSection.php src/testcase/sections/rtSection.php

From: Date: Tue, 21 Jul 2009 11:30:46 +0000
Subject: com phpruntests: Added DESCRIPTION and STDIN sections: src/rtClassMap.php src/testcase/preconditions/rtIsSectionImplemented.php
src/testcase/preconditions/rtIsValidSectionName.php src/testcase/rtTestConfiguration.php
src/testcase/sections/configurationsections/rtStdinSection.php src/testcase/sections/executablesections/rtFileSection.php
src/testcase/sections/informationsections/rtDescriptionSection.php src/testcase/sections/rtSection.php
Groups: php.qa 
Request: Send a blank email to php-qa+get-66318@lists.php.net to get a copy of this message
Commit: 2169f5e679187bc4997ed949accd753207a19340 Author: Zoe Slattery <zoe@php.net> Tue, 21 Jul 2009 11:30:46 +0000 Parents: ce9be909ecdb68829486d9c5116fea0679327244 Branches: master Link: http://git.php.net/?p=phpruntests.git;a=commitdiff;h=2169f5e679187bc4997ed949accd753207a19340 Log: Added DESCRIPTION and STDIN sections Changed paths: M src/rtClassMap.php M src/testcase/preconditions/rtIsSectionImplemented.php M src/testcase/preconditions/rtIsValidSectionName.php M src/testcase/rtTestConfiguration.php A src/testcase/sections/configurationsections/rtStdinSection.php M src/testcase/sections/executablesections/rtFileSection.php A src/testcase/sections/informationsections/rtDescriptionSection.php M src/testcase/sections/rtSection.php

diff --git a/src/rtClassMap.php b/src/rtClassMap.php index 03bdc9e..603685c 100644 --- a/src/rtClassMap.php +++ b/src/rtClassMap.php @@ -85,11 +85,13 @@ $rtClassMap = array( 'rtIniSection' => 'testcase/sections/configurationsections/rtIniSection.php', 'rtPostRawSection' => 'testcase/sections/configurationsections/rtPostRawSection.php', 'rtPostSection' => 'testcase/sections/configurationsections/rtPostSection.php', + 'rtStdinSection' => 'testcase/sections/configurationsections/rtStdinSection.php', 'rtCleanSection' => 'testcase/sections/executablesections/rtCleanSection.php', 'rtFileExternalSection' => 'testcase/sections/executablesections/rtFileExternalSection.php', 'rtFileSection' => 'testcase/sections/executablesections/rtFileSection.php', 'rtSkipIfSection' => 'testcase/sections/executablesections/rtSkipIfSection.php', 'rtCreditsSection' => 'testcase/sections/informationsections/rtCreditsSection.php', + 'rtDescriptionSection' => 'testcase/sections/informationsections/rtDescriptionSection.php', 'rtTestHeaderSection' => 'testcase/sections/informationsections/rtTestHeaderSection.php', 'rtXfailSection' => 'testcase/sections/informationsections/rtXfailSection.php', 'rtExpectFSection' => 'testcase/sections/outputsections/rtExpectFSection.php', diff --git a/src/testcase/preconditions/rtIsSectionImplemented.php b/src/testcase/preconditions/rtIsSectionImplemented.php index 5fcd746..f2621d6 100644 --- a/src/testcase/preconditions/rtIsSectionImplemented.php +++ b/src/testcase/preconditions/rtIsSectionImplemented.php @@ -17,6 +17,7 @@ class rtIsSectionImplemented implements rtTestPreCondition { private $sectionMap = array( 'TEST' => 'rtTestHeaderSection', + 'DESCRIPTION' => 'rtDescriptionSection', 'SKIPIF' => 'rtSkipIfSection', 'FILE' => 'rtFileSection', 'EXPECT' => 'rtExpectSection', @@ -25,6 +26,7 @@ class rtIsSectionImplemented implements rtTestPreCondition 'INI' => 'rtIniSection', 'ARGS' => 'rtArgsSection', 'ENV' => 'rtEnvSection', + 'STDIN' => 'rtStdinSection', 'CREDITS' => 'rtCreditsSection', 'CLEAN' => 'rtCleanSection', 'XFAIL' => 'rtXfailSection', diff --git a/src/testcase/preconditions/rtIsValidSectionName.php b/src/testcase/preconditions/rtIsValidSectionName.php index 0364594..d08e916 100644 --- a/src/testcase/preconditions/rtIsValidSectionName.php +++ b/src/testcase/preconditions/rtIsValidSectionName.php @@ -17,6 +17,7 @@ class rtIsValidSectionName implements rtTestPreCondition { private $validSectionNames = array( 'TEST', + 'DESCRIPTION', 'SKIPIF', 'FILE', 'FILEEOF', @@ -27,6 +28,7 @@ class rtIsValidSectionName implements rtTestPreCondition 'INI', 'ARGS', 'ENV', + 'STDIN', 'XFAIL', 'STDIN', 'CREDITS', diff --git a/src/testcase/rtTestConfiguration.php b/src/testcase/rtTestConfiguration.php index 6d2e759..1459ae0 100644 --- a/src/testcase/rtTestConfiguration.php +++ b/src/testcase/rtTestConfiguration.php @@ -20,6 +20,7 @@ class rtTestConfiguration private $testCommandLineArguments; private $phpExecutable; private $inputFileString; + private $stdin = null; private $cgiTest = false; private $cgiSections = array( 'GET', @@ -45,6 +46,7 @@ class rtTestConfiguration $this->setTestCommandLineArguments($sections); $this->setPhpExecutable($runConfiguration, $sectionHeadings); $this->setInputFileString($runConfiguration, $sections, $sectionHeadings); + $this->setStdin($sections, $sectionHeadings); } @@ -143,6 +145,12 @@ class rtTestConfiguration $this->cgiTest = true; } } + + private function setStdin($sections, $sectionHeadings) { + if(in_array('STDIN', $sectionHeadings)) { + $this->stdin = $sections['STDIN']->getInputString(); + } + } public function getPhpExecutable() { @@ -169,6 +177,11 @@ class rtTestConfiguration { return $this->inputFileString; } + + public function getStdin() + { + return $this->stdin; + } public function isCgiTest() { diff --git a/src/testcase/sections/configurationsections/rtStdinSection.php b/src/testcase/sections/configurationsections/rtStdinSection.php new file mode 100644 index 0000000..91d9e20 --- /dev/null +++ b/src/testcase/sections/configurationsections/rtStdinSection.php @@ -0,0 +1,30 @@ +<?php +/** + * rtStdinSection + * + * Make section content stdin for the test case + * + * @category Testing + * @package RUNTESTS + * @author Zoe Slattery <zoe@php.net> + * @author Stefan Priebsch <spriebsch@php.net> + * @copyright 2009 The PHP Group + * @license http://www.php.net/license/3_01.txt PHP License 3.01 + * @link http://qa.php.net/ + * + */ +class rtStdinSection extends rtConfigurationSection +{ + private $inputString; + + protected function init() + { + $this->inputString = join($this->sectionContents, PHP_EOL) . clPHP_EOL; + } + + public function getInputString() { + return $this->inputString; + } + +} +?> diff --git a/src/testcase/sections/executablesections/rtFileSection.php b/src/testcase/sections/executablesections/rtFileSection.php index dc3f7b5..4d0bb0d 100644 --- a/src/testcase/sections/executablesections/rtFileSection.php +++ b/src/testcase/sections/executablesections/rtFileSection.php @@ -49,7 +49,8 @@ class rtFileSection extends rtExecutableSection $PhpRunner = new rtPhpRunner($phpCommand, $testCase->testConfiguration->getEnvironmentVariables(), - $runConfiguration->getSetting('WorkingDirectory') + $runConfiguration->getSetting('WorkingDirectory'), + $testCase->testConfiguration->getStdin() ); try { diff --git a/src/testcase/sections/informationsections/rtDescriptionSection.php b/src/testcase/sections/informationsections/rtDescriptionSection.php new file mode 100644 index 0000000..be3bf2c --- /dev/null +++ b/src/testcase/sections/informationsections/rtDescriptionSection.php @@ -0,0 +1,18 @@ +<?php +/** + * rtDescriptionSection + * + * Deals with information in test credits section + * + * @category Testing + * @package RUNTESTS + * @author Zoe Slattery <zoe@php.net> + * @author Stefan Priebsch <spriebsch@php.net> + * @copyright 2009 The PHP Group + * @license http://www.php.net/license/3_01.txt PHP License 3.01 + * @link http://qa.php.net/ + */ +class rtDescriptionSection extends rtInformationSection +{ +} +?> diff --git a/src/testcase/sections/rtSection.php b/src/testcase/sections/rtSection.php index 44688a1..5a1bca7 100644 --- a/src/testcase/sections/rtSection.php +++ b/src/testcase/sections/rtSection.php @@ -17,6 +17,7 @@ abstract class rtSection { private static $sectionMap = array ( 'TEST' => 'rtTestHeaderSection', + 'DESCRIPTION' => 'rtDescriptionSection', 'SKIPIF' => 'rtSkipIfSection', 'FILE' => 'rtFileSection', 'EXPECT' => 'rtExpectSection', @@ -25,6 +26,7 @@ abstract class rtSection 'INI' => 'rtIniSection', 'ARGS' => 'rtArgsSection', 'ENV' => 'rtEnvSection', + 'STDIN' => 'rtStdinSection', 'CREDITS' => 'rtCreditsSection', 'CLEAN' => 'rtCleanSection', 'XFAIL' => 'rtXfailSection',
« previous php.qa (#66318) next »