diff options
Diffstat (limited to 'scripts/dev/generate-phpt/src/testcase/gtVariationContainerFunction.php')
-rw-r--r-- | scripts/dev/generate-phpt/src/testcase/gtVariationContainerFunction.php | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/scripts/dev/generate-phpt/src/testcase/gtVariationContainerFunction.php b/scripts/dev/generate-phpt/src/testcase/gtVariationContainerFunction.php new file mode 100644 index 0000000..dfee4ea --- /dev/null +++ b/scripts/dev/generate-phpt/src/testcase/gtVariationContainerFunction.php @@ -0,0 +1,43 @@ +<?php + +/** + * Container for all possible variation test cases of functions + */ +class gtVariationContainerFunction extends gtVariationContainer { + + protected $function; + protected $optionalSections; + + public function __construct($osl) { + $this->optionalSections = $osl; + } + + /** + * Sets function being tested + * + * @param gtFunction $function + */ + public function setFunction(gtFunction $function) { + $this->function = $function; + } + + + /** + * Constucts all possible variation testcases in array $this->variationTests + * + */ + public function constructAll() { + + + $numberOfArguments = count($this->function->getMandatoryArgumentNames()) + count($this->function->getOptionalArgumentNames()); + for($i = 1; $i <= $numberOfArguments; $i++) { + foreach ($this->dataTypes as $d) { + $testCase = gtVariationTestCase::getInstance($this->optionalSections); + $testCase->setUp($this->function, $i, $d); + $testCase->constructTestCase(); + $this->variationTests[] = $testCase->toString(); + } + } + } +} +?>
\ No newline at end of file |