web_tester_test.php.svn-base
来自「PHP 知识管理系统(基于树结构的知识管理系统), 英文原版的PHP源码。」· SVN-BASE 代码 · 共 156 行
SVN-BASE
156 行
<?php// $Id: web_tester_test.php 1509 2007-05-08 22:11:49Z lastcraft $require_once(dirname(__FILE__) . '/../autorun.php');require_once(dirname(__FILE__) . '/../web_tester.php');class TestOfFieldExpectation extends UnitTestCase { function testStringMatchingIsCaseSensitive() { $expectation = new FieldExpectation('a'); $this->assertTrue($expectation->test('a')); $this->assertTrue($expectation->test(array('a'))); $this->assertFalse($expectation->test('A')); } function testMatchesInteger() { $expectation = new FieldExpectation('1'); $this->assertTrue($expectation->test('1')); $this->assertTrue($expectation->test(1)); $this->assertTrue($expectation->test(array('1'))); $this->assertTrue($expectation->test(array(1))); } function testNonStringFailsExpectation() { $expectation = new FieldExpectation('a'); $this->assertFalse($expectation->test(null)); } function testUnsetFieldCanBeTestedFor() { $expectation = new FieldExpectation(false); $this->assertTrue($expectation->test(false)); } function testMultipleValuesCanBeInAnyOrder() { $expectation = new FieldExpectation(array('a', 'b')); $this->assertTrue($expectation->test(array('a', 'b'))); $this->assertTrue($expectation->test(array('b', 'a'))); $this->assertFalse($expectation->test(array('a', 'a'))); $this->assertFalse($expectation->test('a')); } function testSingleItemCanBeArrayOrString() { $expectation = new FieldExpectation(array('a')); $this->assertTrue($expectation->test(array('a'))); $this->assertTrue($expectation->test('a')); }}class TestOfHeaderExpectations extends UnitTestCase { function testExpectingOnlyTheHeaderName() { $expectation = new HttpHeaderExpectation('a'); $this->assertIdentical($expectation->test(false), false); $this->assertIdentical($expectation->test('a: A'), true); $this->assertIdentical($expectation->test('A: A'), true); $this->assertIdentical($expectation->test('a: B'), true); $this->assertIdentical($expectation->test(' a : A '), true); } function testHeaderValueAsWell() { $expectation = new HttpHeaderExpectation('a', 'A'); $this->assertIdentical($expectation->test(false), false); $this->assertIdentical($expectation->test('a: A'), true); $this->assertIdentical($expectation->test('A: A'), true); $this->assertIdentical($expectation->test('A: a'), false); $this->assertIdentical($expectation->test('a: B'), false); $this->assertIdentical($expectation->test(' a : A '), true); $this->assertIdentical($expectation->test(' a : AB '), false); } function testHeaderValueWithColons() { $expectation = new HttpHeaderExpectation('a', 'A:B:C'); $this->assertIdentical($expectation->test('a: A'), false); $this->assertIdentical($expectation->test('a: A:B'), false); $this->assertIdentical($expectation->test('a: A:B:C'), true); $this->assertIdentical($expectation->test('a: A:B:C:D'), false); } function testMultilineSearch() { $expectation = new HttpHeaderExpectation('a', 'A'); $this->assertIdentical($expectation->test("aa: A\r\nb: B\r\nc: C"), false); $this->assertIdentical($expectation->test("aa: A\r\na: A\r\nb: B"), true); } function testMultilineSearchWithPadding() { $expectation = new HttpHeaderExpectation('a', ' A '); $this->assertIdentical($expectation->test("aa:A\r\nb:B\r\nc:C"), false); $this->assertIdentical($expectation->test("aa:A\r\na:A\r\nb:B"), true); } function testPatternMatching() { $expectation = new HttpHeaderExpectation('a', new PatternExpectation('/A/')); $this->assertIdentical($expectation->test('a: A'), true); $this->assertIdentical($expectation->test('A: A'), true); $this->assertIdentical($expectation->test('A: a'), false); $this->assertIdentical($expectation->test('a: B'), false); $this->assertIdentical($expectation->test(' a : A '), true); $this->assertIdentical($expectation->test(' a : AB '), true); } function testCaseInsensitivePatternMatching() { $expectation = new HttpHeaderExpectation('a', new PatternExpectation('/A/i')); $this->assertIdentical($expectation->test('a: a'), true); $this->assertIdentical($expectation->test('a: B'), false); $this->assertIdentical($expectation->test(' a : A '), true); $this->assertIdentical($expectation->test(' a : BAB '), true); $this->assertIdentical($expectation->test(' a : bab '), true); } function testUnwantedHeader() { $expectation = new NoHttpHeaderExpectation('a'); $this->assertIdentical($expectation->test(''), true); $this->assertIdentical($expectation->test('stuff'), true); $this->assertIdentical($expectation->test('b: B'), true); $this->assertIdentical($expectation->test('a: A'), false); $this->assertIdentical($expectation->test('A: A'), false); } function testMultilineUnwantedSearch() { $expectation = new NoHttpHeaderExpectation('a'); $this->assertIdentical($expectation->test("aa:A\r\nb:B\r\nc:C"), true); $this->assertIdentical($expectation->test("aa:A\r\na:A\r\nb:B"), false); } function testLocationHeaderSplitsCorrectly() { $expectation = new HttpHeaderExpectation('Location', 'http://here/'); $this->assertIdentical($expectation->test('Location: http://here/'), true); }}class TestOfTextExpectations extends UnitTestCase { function testMatchingSubString() { $expectation = new TextExpectation('wanted'); $this->assertIdentical($expectation->test(''), false); $this->assertIdentical($expectation->test('Wanted'), false); $this->assertIdentical($expectation->test('wanted'), true); $this->assertIdentical($expectation->test('the wanted text is here'), true); } function testNotMatchingSubString() { $expectation = new NoTextExpectation('wanted'); $this->assertIdentical($expectation->test(''), true); $this->assertIdentical($expectation->test('Wanted'), true); $this->assertIdentical($expectation->test('wanted'), false); $this->assertIdentical($expectation->test('the wanted text is here'), false); }}class TestOfGenericAssertionsInWebTester extends WebTestCase { function testEquality() { $this->assertEqual('a', 'a'); $this->assertNotEqual('a', 'A'); }}?>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?