compatibility_test.php.svn-base

来自「PHP 知识管理系统(基于树结构的知识管理系统), 英文原版的PHP源码。」· SVN-BASE 代码 · 共 97 行

SVN-BASE
97
字号
<?php// $Id: compatibility_test.php 1505 2007-04-30 23:39:59Z lastcraft $require_once(dirname(__FILE__) . '/../autorun.php');require_once(dirname(__FILE__) . '/../compatibility.php');class ComparisonClass {}class ComparisonSubclass extends ComparisonClass {}if (version_compare(phpversion(), '5') >= 0) {    eval('interface ComparisonInterface { }');    eval('class ComparisonClassWithInterface implements ComparisonInterface { }');}class TestOfCompatibility extends UnitTestCase {        function testIsA() {        $this->assertTrue(SimpleTestCompatibility::isA(                new ComparisonClass(),                'ComparisonClass'));        $this->assertFalse(SimpleTestCompatibility::isA(                new ComparisonClass(),                'ComparisonSubclass'));        $this->assertTrue(SimpleTestCompatibility::isA(                new ComparisonSubclass(),                'ComparisonClass'));    }        function testIdentityOfNumericStrings() {        $numericString1 = "123";        $numericString2 = "00123";        $this->assertNotIdentical($numericString1, $numericString2);    }        function testIdentityOfObjects() {        $object1 = new ComparisonClass();        $object2 = new ComparisonClass();        $this->assertIdentical($object1, $object2);    }        function testReferences () {        $thing = "Hello";        $thing_reference = &$thing;        $thing_copy = $thing;        $this->assertTrue(SimpleTestCompatibility::isReference(                $thing,                $thing));        $this->assertTrue(SimpleTestCompatibility::isReference(                $thing,                $thing_reference));        $this->assertFalse(SimpleTestCompatibility::isReference(                $thing,                $thing_copy));    }        function testObjectReferences () {        $object = &new ComparisonClass();        $object_reference = &$object;        $object_copy = new ComparisonClass();        $object_assignment = $object;        $this->assertTrue(SimpleTestCompatibility::isReference(                $object,                $object));        $this->assertTrue(SimpleTestCompatibility::isReference(                $object,                $object_reference));        $this->assertFalse(SimpleTestCompatibility::isReference(                $object,                $object_copy));        if (version_compare(phpversion(), '5', '>=')) {            $this->assertTrue(SimpleTestCompatibility::isReference(                    $object,                    $object_assignment));        } else {            $this->assertFalse(SimpleTestCompatibility::isReference(                    $object,                    $object_assignment));        }    }        function testInteraceComparison() {        if (version_compare(phpversion(), '5', '<')) {            return;        }                $object = new ComparisonClassWithInterface();        $this->assertFalse(SimpleTestCompatibility::isA(                new ComparisonClass(),                'ComparisonInterface'));        $this->assertTrue(SimpleTestCompatibility::isA(                new ComparisonClassWithInterface(),                'ComparisonInterface'));    }}?>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?