diff options
| author | Zoe Slattery <zoe@php.net> | 2009-05-07 09:21:43 +0000 |
|---|---|---|
| committer | Zoe Slattery <zoe@php.net> | 2009-05-07 09:21:43 +0000 |
| commit | cba448a9d358451338d57c5e45f7c7e06f3143d2 (patch) | |
| tree | df77a5d196aca30ffeb295d7dd5e79dc2429422a /scripts/dev/generate-phpt/src/testcase/gtVariationTestCase.php | |
| parent | 903f306a60fddda0c7faf824d9252b08add34456 (diff) | |
| download | php-git-cba448a9d358451338d57c5e45f7c7e06f3143d2.tar.gz | |
Replacing generate script with a new version
Diffstat (limited to 'scripts/dev/generate-phpt/src/testcase/gtVariationTestCase.php')
| -rw-r--r-- | scripts/dev/generate-phpt/src/testcase/gtVariationTestCase.php | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/scripts/dev/generate-phpt/src/testcase/gtVariationTestCase.php b/scripts/dev/generate-phpt/src/testcase/gtVariationTestCase.php new file mode 100644 index 0000000000..039367d5b3 --- /dev/null +++ b/scripts/dev/generate-phpt/src/testcase/gtVariationTestCase.php @@ -0,0 +1,55 @@ + +<?php + +/** + * Class for extended variations. Needs 'data type' and argument to vary + */ + +abstract class gtVariationTestCase extends gtTestCase { + + + /** + * Returns an instance of a test case for a method or a function + * + * @param string $type + * @return test case object + */ + public static function getInstance($optionalSections, $type = 'function') { + + if($type == 'function') { + return new gtVariationTestCaseFunction($optionalSections); + } + if($type =='method') { + return new gtVariationTestCaseMethod($optionalSections); + } + + } + + public function argInitVariation() { + $statements = $this->subject->getInitialisationStatements(); + for($i=0; $i<count($statements); $i++) { + if($i != ( $this->argumentNumber -1) ) { + $this->testCase[] = $statements[$i]; + } + } + $this->testCase = gtCodeSnippet::appendBlankLines(2, $this->testCase ); + } + + public function addVariationCode() { + $this->testCase = gtCodeSnippet::append($this->variationData, $this->testCase); + $this->testCase = gtCodeSnippet::appendBlankLines(2, $this->testCase ); + } + + public function constructSubjectCalls() { + $this->argInitVariation(); + $this->addVariationCode(); + $this->subjectCalls(); + } + + public function addVariationEcho() { + $this->testCase[] = "echo \"*** Test substituting argument ".$this->argumentNumber." with ".$this->variationData." values ***\\n\";"; + $this->testCase = gtCodeSnippet::appendBlankLines(1, $this->testCase ); + } + +} +?>
\ No newline at end of file |
