source: trunk/server/www/vendors/simpletest/test/reflection_php4_test.php @ 6

Last change on this file since 6 was 6, checked in by sander, 11 years ago

Added SimpleTest? test framework

File size: 2.0 KB
Line 
1<?php
2// $Id: reflection_php4_test.php 1505 2007-04-30 23:39:59Z lastcraft $
3require_once(dirname(__FILE__) . '/../autorun.php');
4
5class AnyOldThing {
6    function aMethod() {
7    }
8}
9
10class AnyOldChildThing extends AnyOldThing { }
11
12class TestOfReflection extends UnitTestCase {
13
14    function testClassExistence() {
15        $reflection = new SimpleReflection('AnyOldThing');
16        $this->assertTrue($reflection->classOrInterfaceExists());
17        $this->assertTrue($reflection->classOrInterfaceExistsSansAutoload());
18    }
19
20    function testClassNonExistence() {
21        $reflection = new SimpleReflection('UnknownThing');
22        $this->assertFalse($reflection->classOrInterfaceExists());
23        $this->assertFalse($reflection->classOrInterfaceExistsSansAutoload());
24    }
25
26    function testDetectionOfInterfacesAlwaysFalse() {
27        $reflection = new SimpleReflection('AnyOldThing');
28        $this->assertFalse($reflection->isAbstract());
29        $this->assertFalse($reflection->isInterface());
30    }
31
32    function testFindingParentClass() {
33        $reflection = new SimpleReflection('AnyOldChildThing');
34        $this->assertEqual(strtolower($reflection->getParent()), 'anyoldthing');
35    }
36
37    function testMethodsListFromClass() {
38        $reflection = new SimpleReflection('AnyOldThing');
39        $methods = $reflection->getMethods();
40        $this->assertEqualIgnoringCase($methods[0], 'aMethod');
41    }
42
43    function testNoInterfacesForPHP4() {
44        $reflection = new SimpleReflection('AnyOldThing');
45        $this->assertEqual(
46                $reflection->getInterfaces(),
47                array());
48    }
49
50    function testMostGeneralPossibleSignature() {
51        $reflection = new SimpleReflection('AnyOldThing');
52        $this->assertEqualIgnoringCase(
53                $reflection->getSignature('aMethod'),
54                'function &aMethod()');
55    }
56
57    function assertEqualIgnoringCase($a, $b) {
58        return $this->assertEqual(strtolower($a), strtolower($b));
59    }
60}
61?>
Note: See TracBrowser for help on using the repository browser.