⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 visual_test.php.svn-base

📁 PHP 知识管理系统(基于树结构的知识管理系统), 英文原版的PHP源码。
💻 SVN-BASE
📖 第 1 页 / 共 2 页
字号:
        function testPatterns() {            $this->assertPattern('/hello/', "Hello there", "%s -> Fail");            // Fail.            $this->assertNoPattern('/hello/i', "Hello there", "%s -> Fail");      // Fail.        }        function testLongStrings() {            $text = "";            for ($i = 0; $i < 10; $i++) {                $text .= "0123456789";            }            $this->assertEqual($text . $text, $text . "a" . $text);        // Fail.        }	}    class Dummy {        function Dummy() {        }        function a() {        }    }    Mock::generate('Dummy');    class TestOfMockObjectsOutput extends UnitTestCase {        function testCallCounts() {            $dummy = &new MockDummy();            $dummy->expectCallCount('a', 1, 'My message: %s');            $dummy->a();            $dummy->a();        }        function testMinimumCallCounts() {            $dummy = &new MockDummy();            $dummy->expectMinimumCallCount('a', 2, 'My message: %s');            $dummy->a();            $dummy->a();        }        function testEmptyMatching() {            $dummy = &new MockDummy();            $dummy->expectArguments('a', array());            $dummy->a();            $dummy->a(null);        // Fail.        }        function testEmptyMatchingWithCustomMessage() {            $dummy = &new MockDummy();            $dummy->expectArguments('a', array(), 'My expectation message: %s');            $dummy->a();            $dummy->a(null);        // Fail.        }        function testNullMatching() {            $dummy = &new MockDummy();            $dummy->expectArguments('a', array(null));            $dummy->a(null);            $dummy->a();        // Fail.        }        function testBooleanMatching() {            $dummy = &new MockDummy();            $dummy->expectArguments('a', array(true, false));            $dummy->a(true, false);            $dummy->a(true, true);        // Fail.        }        function testIntegerMatching() {            $dummy = &new MockDummy();            $dummy->expectArguments('a', array(32, 33));            $dummy->a(32, 33);            $dummy->a(32, 34);        // Fail.        }        function testFloatMatching() {            $dummy = &new MockDummy();            $dummy->expectArguments('a', array(3.2, 3.3));            $dummy->a(3.2, 3.3);            $dummy->a(3.2, 3.4);        // Fail.        }        function testStringMatching() {            $dummy = &new MockDummy();            $dummy->expectArguments('a', array('32', '33'));            $dummy->a('32', '33');            $dummy->a('32', '34');        // Fail.        }        function testEmptyMatchingWithCustomExpectationMessage() {            $dummy = &new MockDummy();            $dummy->expectArguments(                    'a',                    array(new EqualExpectation('A', 'My part expectation message: %s')),                    'My expectation message: %s');            $dummy->a('A');            $dummy->a('B');        // Fail.        }        function testArrayMatching() {            $dummy = &new MockDummy();            $dummy->expectArguments('a', array(array(32), array(33)));            $dummy->a(array(32), array(33));            $dummy->a(array(32), array('33'));        // Fail.        }        function testObjectMatching() {            $a = new Dummy();            $a->a = 'a';            $b = new Dummy();            $b->b = 'b';            $dummy = &new MockDummy();            $dummy->expectArguments('a', array($a, $b));            $dummy->a($a, $b);            $dummy->a($a, $a);        // Fail.        }        function testBigList() {            $dummy = &new MockDummy();            $dummy->expectArguments('a', array(false, 0, 1, 1.0));            $dummy->a(false, 0, 1, 1.0);            $dummy->a(true, false, 2, 2.0);        // Fail.        }    }    class TestOfPastBugs extends UnitTestCase {        function testMixedTypes() {            $this->assertEqual(array(), null, "%s -> Pass");            $this->assertIdentical(array(), null, "%s -> Fail");    // Fail.        }        function testMockWildcards() {            $dummy = &new MockDummy();            $dummy->expectArguments('a', array('*', array(33)));            $dummy->a(array(32), array(33));            $dummy->a(array(32), array('33'));        // Fail.        }    }    class TestOfVisualShell extends ShellTestCase {        function testDump() {            $this->execute('ls');            $this->dumpOutput();            $this->execute('dir');            $this->dumpOutput();        }        function testDumpOfList() {            $this->execute('ls');            $this->dump($this->getOutputAsList());        }    }    class PassesAsWellReporter extends HtmlReporter {        function _getCss() {            return parent::_getCss() . ' .pass { color: darkgreen; }';        }        function paintPass($message) {            parent::paintPass($message);            print "<span class=\"pass\">Pass</span>: ";            $breadcrumb = $this->getTestList();            array_shift($breadcrumb);            print implode(" -&gt; ", $breadcrumb);            print " -&gt; " . htmlentities($message) . "<br />\n";        }        function paintSignal($type, &$payload) {            print "<span class=\"fail\">$type</span>: ";            $breadcrumb = $this->getTestList();            array_shift($breadcrumb);            print implode(" -&gt; ", $breadcrumb);            print " -&gt; " . htmlentities(serialize($payload)) . "<br />\n";        }    }        class TestOfSkippingNoMatterWhat extends UnitTestCase {        function skip() {            $this->skipIf(true, 'Always skipped -> %s');        }                function testFail() {            $this->fail('This really shouldn\'t have happened');        }    }        class TestOfSkippingOrElse extends UnitTestCase {        function skip() {            $this->skipUnless(false, 'Always skipped -> %s');        }                function testFail() {            $this->fail('This really shouldn\'t have happened');        }    }        class TestOfSkippingTwiceOver extends UnitTestCase {        function skip() {            $this->skipIf(true, 'First reason -> %s');            $this->skipIf(true, 'Second reason -> %s');        }                function testFail() {            $this->fail('This really shouldn\'t have happened');        }    }        class TestThatShouldNotBeSkipped extends UnitTestCase {        function skip() {            $this->skipIf(false);            $this->skipUnless(true);        }                function testFail() {            $this->fail('We should see this message');        }                function testPass() {            $this->pass('We should see this message');        }    }    $test = &new TestSuite('Visual test with 46 passes, 47 fails and 0 exceptions');    $test->addTestCase(new PassingUnitTestCaseOutput());    $test->addTestCase(new FailingUnitTestCaseOutput());    $test->addTestCase(new TestOfMockObjectsOutput());    $test->addTestCase(new TestOfPastBugs());    $test->addTestCase(new TestOfVisualShell());    $test->addTestCase(new TestOfSkippingNoMatterWhat());    $test->addTestCase(new TestOfSkippingOrElse());    $test->addTestCase(new TestOfSkippingTwiceOver());    $test->addTestCase(new TestThatShouldNotBeSkipped());    if (isset($_GET['xml']) || in_array('xml', (isset($argv) ? $argv : array()))) {        $reporter = &new XmlReporter();    } elseif (TextReporter::inCli()) {        $reporter = &new TextReporter();    } else {        $reporter = &new PassesAsWellReporter();    }    if (isset($_GET['dry']) || in_array('dry', (isset($argv) ? $argv : array()))) {        $reporter->makeDry();    }    exit ($test->run($reporter) ? 0 : 1);?>

⌨️ 快捷键说明

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