summaryrefslogtreecommitdiff
path: root/scripts/dev/generate-phpt/tests/gtFunctionTest.php
blob: 5afcd950d46fb1b3c3f54cc7cddd900c01f0ec16 (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
65
66
67
68
69
70
71
cd
<?php
require_once 'PHPUnit/Framework.php';
require_once dirname(__FILE__) . '/../src/gtAutoload.php';


class gtFunctionTest extends PHPUnit_Framework_TestCase
{
  public function testArguments() {

    $f = new gtFunction('cos');
    $f->setArgumentNames();
    $m = $f->getMandatoryArgumentNames();
    $this->assertEquals($m[0], 'number');
  }

  public function testArguments2() {

    $f = new gtFunction('version_compare');
    $f->setArgumentNames();
    $m = $f->getMandatoryArgumentNames();
    $o = $f->getOptionalArgumentNames();
    $this->assertEquals($m[0], 'ver1');
    $this->assertEquals($m[1], 'ver2');
    $this->assertEquals($o[0], 'oper');

  }

  public function testExtraArguments() {

    $f = new gtFunction('version_compare');
    $f->setArgumentNames();
    $f->setExtraArgumentList();

    $this->assertEquals('$ver1, $ver2, $oper, $extra_arg', $f->getExtraArgumentList());
  }

  public function testShortArguments() {

    $f = new gtFunction('version_compare');
    $f->setArgumentNames();
    $f->setShortArgumentList();

    $this->assertEquals('$ver1', $f->getShortArgumentList());
  }

   public function testAllArgumentList() {

    $f = new gtFunction('version_compare');
    $f->setArgumentNames();
    $f->setValidArgumentLists();
    $a = $f->getValidArgumentLists();

    $this->assertEquals('$ver1, $ver2', $a[0]);
    $this->assertEquals('$ver1, $ver2, $oper', $a[1]);
  }

   public function testInitialisation() {

    $f = new gtFunction('version_compare');
    $f->setArgumentNames();
    $f->setInitialisationStatements();
    $a = $f->getInitialisationStatements();

    $this->assertEquals('$ver1 = ', $a[0]);
    $this->assertEquals('$ver2 = ', $a[1]);
    $this->assertEquals('$oper = ', $a[2]);
  }

}
?>