blob: 45cbe2046cc86f77de41743fcf8ecad65d5cf120 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
<?php
/**
* Class for variation tests for a PHP function
*/
class gtVariationTestCaseFunction extends gtVariationTestCase {
protected $argumentNumber;
protected $variationData;
protected $testCase;
public function __construct($opt) {
$this->optionalSections = $opt;
}
/**
* Set data neede to construct variation tests
*
* @param gtfunction $function
* @param string $argumentNumber
* @param string $variationData
*/
public function setUp(gtfunction $function, $argumentNumber, $variationData) {
$this->subject = $function;
$this->argumentNumber = $argumentNumber;
$this->variationData = $variationData;
}
/**
* Constructs the test case as a array of strings
*
*/
public function constructTestCase() {
$this->constructCommonHeaders();
$this->addVariationEcho();
$this->constructSubjectCalls();
$this->constructCommonClosing();
}
public function testHeader() {
$this->testCase[] = "--TEST--";
$this->testCase[] = "Test function ".$this->subject->getName()."() by substituting argument ".$this->argumentNumber." with ".$this->variationData." values.";
}
public function subjectCalls() {
$this->testCase = gtCodeSnippet::append('loopStart', $this->testCase);
// Construct the argument list to pass to the function being tested
$argumentList = explode(",", $this->subject->getMaximumArgumentList());
$argumentList[$this->argumentNumber -1 ] = "\$var ";
$list = implode(", ", $argumentList);
$this->testCase[] = " var_dump(".$this->subject->getName()."( ".$list." ) );";
$this->testCase = gtCodeSnippet::append('loopClose', $this->testCase);
}
}
?>
|