summaryrefslogtreecommitdiffstats
path: root/3rdparty
diff options
context:
space:
mode:
authorRobin Appelman <icewind@owncloud.com>2012-05-14 23:12:16 +0200
committerRobin Appelman <icewind@owncloud.com>2012-05-14 23:12:16 +0200
commit8b1bc322ff1932d283c8c701384b0d74b0b1ade9 (patch)
tree28fca3f479ae49ad7d5ebe16211f4fcac254e195 /3rdparty
parent6779f28af40c51a0bd3722eca2fd313130e1a367 (diff)
downloadnextcloud-server-8b1bc322ff1932d283c8c701384b0d74b0b1ade9.tar.gz
nextcloud-server-8b1bc322ff1932d283c8c701384b0d74b0b1ade9.zip
remove simpletests internet test cases due to xss issues
Diffstat (limited to '3rdparty')
-rw-r--r--3rdparty/simpletest/test/acceptance_test.php1729
-rw-r--r--3rdparty/simpletest/test/adapter_test.php50
-rw-r--r--3rdparty/simpletest/test/all_tests.php13
-rw-r--r--3rdparty/simpletest/test/arguments_test.php82
-rw-r--r--3rdparty/simpletest/test/authentication_test.php145
-rw-r--r--3rdparty/simpletest/test/autorun_test.php23
-rw-r--r--3rdparty/simpletest/test/bad_test_suite.php10
-rw-r--r--3rdparty/simpletest/test/browser_test.php802
-rw-r--r--3rdparty/simpletest/test/collector_test.php50
-rw-r--r--3rdparty/simpletest/test/command_line_test.php40
-rw-r--r--3rdparty/simpletest/test/compatibility_test.php87
-rw-r--r--3rdparty/simpletest/test/cookies_test.php227
-rw-r--r--3rdparty/simpletest/test/detached_test.php15
-rw-r--r--3rdparty/simpletest/test/dumper_test.php88
-rw-r--r--3rdparty/simpletest/test/eclipse_test.php32
-rw-r--r--3rdparty/simpletest/test/encoding_test.php240
-rw-r--r--3rdparty/simpletest/test/errors_test.php229
-rw-r--r--3rdparty/simpletest/test/exceptions_test.php183
-rw-r--r--3rdparty/simpletest/test/expectation_test.php317
-rw-r--r--3rdparty/simpletest/test/form_test.php344
-rw-r--r--3rdparty/simpletest/test/frames_test.php549
-rw-r--r--3rdparty/simpletest/test/http_test.php492
-rw-r--r--3rdparty/simpletest/test/interfaces_test.php137
-rw-r--r--3rdparty/simpletest/test/interfaces_test_php5_1.php14
-rw-r--r--3rdparty/simpletest/test/live_test.php47
-rw-r--r--3rdparty/simpletest/test/mock_objects_test.php985
-rw-r--r--3rdparty/simpletest/test/page_test.php166
-rw-r--r--3rdparty/simpletest/test/parse_error_test.php9
-rw-r--r--3rdparty/simpletest/test/parsing_test.php642
-rw-r--r--3rdparty/simpletest/test/php_parser_test.php489
-rw-r--r--3rdparty/simpletest/test/recorder_test.php23
-rw-r--r--3rdparty/simpletest/test/reflection_php5_test.php263
-rw-r--r--3rdparty/simpletest/test/remote_test.php19
-rw-r--r--3rdparty/simpletest/test/shell_test.php38
-rw-r--r--3rdparty/simpletest/test/shell_tester_test.php42
-rw-r--r--3rdparty/simpletest/test/simpletest_test.php58
-rw-r--r--3rdparty/simpletest/test/site/file.html6
-rw-r--r--3rdparty/simpletest/test/socket_test.php25
-rw-r--r--3rdparty/simpletest/test/support/collector/collectable.10
-rw-r--r--3rdparty/simpletest/test/support/collector/collectable.20
-rw-r--r--3rdparty/simpletest/test/support/empty_test_file.php3
-rw-r--r--3rdparty/simpletest/test/support/failing_test.php9
-rw-r--r--3rdparty/simpletest/test/support/latin1_sample1
-rw-r--r--3rdparty/simpletest/test/support/passing_test.php9
-rw-r--r--3rdparty/simpletest/test/support/recorder_sample.php14
-rw-r--r--3rdparty/simpletest/test/support/spl_examples.php15
-rw-r--r--3rdparty/simpletest/test/support/supplementary_upload_sample.txt1
-rw-r--r--3rdparty/simpletest/test/support/test1.php7
-rw-r--r--3rdparty/simpletest/test/support/upload_sample.txt1
-rw-r--r--3rdparty/simpletest/test/tag_test.php554
-rw-r--r--3rdparty/simpletest/test/test_with_parse_error.php8
-rw-r--r--3rdparty/simpletest/test/unit_tester_test.php61
-rw-r--r--3rdparty/simpletest/test/unit_tests.php49
-rw-r--r--3rdparty/simpletest/test/url_test.php515
-rw-r--r--3rdparty/simpletest/test/user_agent_test.php348
-rw-r--r--3rdparty/simpletest/test/visual_test.php495
-rw-r--r--3rdparty/simpletest/test/web_tester_test.php155
-rw-r--r--3rdparty/simpletest/test/xml_test.php187
58 files changed, 0 insertions, 11142 deletions
diff --git a/3rdparty/simpletest/test/acceptance_test.php b/3rdparty/simpletest/test/acceptance_test.php
deleted file mode 100644
index e96fe737e5f..00000000000
--- a/3rdparty/simpletest/test/acceptance_test.php
+++ /dev/null
@@ -1,1729 +0,0 @@
-<?php
-// $Id: acceptance_test.php 2013 2011-04-29 09:29:45Z pp11 $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../compatibility.php');
-require_once(dirname(__FILE__) . '/../browser.php');
-require_once(dirname(__FILE__) . '/../web_tester.php');
-require_once(dirname(__FILE__) . '/../unit_tester.php');
-
-class SimpleTestAcceptanceTest extends WebTestCase {
- static function samples() {
- return 'http://www.lastcraft.com/test/';
- }
-}
-
-class TestOfLiveBrowser extends UnitTestCase {
- function samples() {
- return SimpleTestAcceptanceTest::samples();
- }
-
- function testGet() {
- $browser = new SimpleBrowser();
- $browser->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- $this->assertTrue($browser->get($this->samples() . 'network_confirm.php'));
- $this->assertPattern('/target for the SimpleTest/', $browser->getContent());
- $this->assertPattern('/Request method.*?<dd>GET<\/dd>/', $browser->getContent());
- $this->assertEqual($browser->getTitle(), 'Simple test target file');
- $this->assertEqual($browser->getResponseCode(), 200);
- $this->assertEqual($browser->getMimeType(), 'text/html');
- }
-
- function testPost() {
- $browser = new SimpleBrowser();
- $browser->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- $this->assertTrue($browser->post($this->samples() . 'network_confirm.php'));
- $this->assertPattern('/target for the SimpleTest/', $browser->getContent());
- $this->assertPattern('/Request method.*?<dd>POST<\/dd>/', $browser->getContent());
- }
-
- function testAbsoluteLinkFollowing() {
- $browser = new SimpleBrowser();
- $browser->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- $browser->get($this->samples() . 'link_confirm.php');
- $this->assertTrue($browser->clickLink('Absolute'));
- $this->assertPattern('/target for the SimpleTest/', $browser->getContent());
- }
-
- function testRelativeEncodedLinkFollowing() {
- $browser = new SimpleBrowser();
- $browser->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- $browser->get($this->samples() . 'link_confirm.php');
- // Warning: the below data is ISO 8859-1 encoded
- $this->assertTrue($browser->clickLink("m\xE4rc\xEAl kiek'eboe"));
- $this->assertPattern('/target for the SimpleTest/', $browser->getContent());
- }
-
- function testRelativeLinkFollowing() {
- $browser = new SimpleBrowser();
- $browser->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- $browser->get($this->samples() . 'link_confirm.php');
- $this->assertTrue($browser->clickLink('Relative'));
- $this->assertPattern('/target for the SimpleTest/', $browser->getContent());
- }
-
- function testUnifiedClickLinkClicking() {
- $browser = new SimpleBrowser();
- $browser->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- $browser->get($this->samples() . 'link_confirm.php');
- $this->assertTrue($browser->click('Relative'));
- $this->assertPattern('/target for the SimpleTest/', $browser->getContent());
- }
-
- function testIdLinkFollowing() {
- $browser = new SimpleBrowser();
- $browser->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- $browser->get($this->samples() . 'link_confirm.php');
- $this->assertTrue($browser->clickLinkById(1));
- $this->assertPattern('/target for the SimpleTest/', $browser->getContent());
- }
-
- function testCookieReading() {
- $browser = new SimpleBrowser();
- $browser->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- $browser->get($this->samples() . 'set_cookies.php');
- $this->assertEqual($browser->getCurrentCookieValue('session_cookie'), 'A');
- $this->assertEqual($browser->getCurrentCookieValue('short_cookie'), 'B');
- $this->assertEqual($browser->getCurrentCookieValue('day_cookie'), 'C');
- }
-
- function testSimpleSubmit() {
- $browser = new SimpleBrowser();
- $browser->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- $browser->get($this->samples() . 'form.html');
- $this->assertTrue($browser->clickSubmit('Go!'));
- $this->assertPattern('/Request method.*?<dd>POST<\/dd>/', $browser->getContent());
- $this->assertPattern('/go=\[Go!\]/', $browser->getContent());
- }
-
- function testUnifiedClickCanSubmit() {
- $browser = new SimpleBrowser();
- $browser->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- $browser->get($this->samples() . 'form.html');
- $this->assertTrue($browser->click('Go!'));
- $this->assertPattern('/go=\[Go!\]/', $browser->getContent());
- }
-}
-
-class TestOfLocalFileBrowser extends UnitTestCase {
- function samples() {
- return 'file://'.dirname(__FILE__).'/site/';
- }
-
- function testGet() {
- $browser = new SimpleBrowser();
- $browser->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- $this->assertTrue($browser->get($this->samples() . 'file.html'));
- $this->assertPattern('/Link to SimpleTest/', $browser->getContent());
- $this->assertEqual($browser->getTitle(), 'Link to SimpleTest');
- $this->assertFalse($browser->getResponseCode());
- $this->assertEqual($browser->getMimeType(), '');
- }
-}
-
-class TestOfRequestMethods extends UnitTestCase {
- function samples() {
- return SimpleTestAcceptanceTest::samples();
- }
-
- function testHeadRequest() {
- $browser = new SimpleBrowser();
- $this->assertTrue($browser->head($this->samples() . 'request_methods.php'));
- $this->assertEqual($browser->getResponseCode(), 202);
- }
-
- function testGetRequest() {
- $browser = new SimpleBrowser();
- $this->assertTrue($browser->get($this->samples() . 'request_methods.php'));
- $this->assertEqual($browser->getResponseCode(), 405);
- }
-
- function testPostWithPlainEncoding() {
- $browser = new SimpleBrowser();
- $this->assertTrue($browser->post($this->samples() . 'request_methods.php', 'A content message'));
- $this->assertEqual($browser->getResponseCode(), 406);
- $this->assertPattern('/Please ensure content type is an XML format/', $browser->getContent());
- }
-
- function testPostWithXmlEncoding() {
- $browser = new SimpleBrowser();
- $this->assertTrue($browser->post($this->samples() . 'request_methods.php', '<a><b>c</b></a>', 'text/xml'));
- $this->assertEqual($browser->getResponseCode(), 201);
- $this->assertPattern('/c/', $browser->getContent());
- }
-
- function testPutWithPlainEncoding() {
- $browser = new SimpleBrowser();
- $this->assertTrue($browser->put($this->samples() . 'request_methods.php', 'A content message'));
- $this->assertEqual($browser->getResponseCode(), 406);
- $this->assertPattern('/Please ensure content type is an XML format/', $browser->getContent());
- }
-
- function testPutWithXmlEncoding() {
- $browser = new SimpleBrowser();
- $this->assertTrue($browser->put($this->samples() . 'request_methods.php', '<a><b>c</b></a>', 'application/xml'));
- $this->assertEqual($browser->getResponseCode(), 201);
- $this->assertPattern('/c/', $browser->getContent());
- }
-
- function testDeleteRequest() {
- $browser = new SimpleBrowser();
- $browser->delete($this->samples() . 'request_methods.php');
- $this->assertEqual($browser->getResponseCode(), 202);
- $this->assertPattern('/Your delete request was accepted/', $browser->getContent());
- }
-
-}
-
-class TestRadioFields extends SimpleTestAcceptanceTest {
- function testSetFieldAsInteger() {
- $this->get($this->samples() . 'form_with_radio_buttons.html');
- $this->assertTrue($this->setField('tested_field', 2));
- $this->clickSubmitByName('send');
- $this->assertEqual($this->getUrl(), $this->samples() . 'form_with_radio_buttons.html?tested_field=2&send=click+me');
- }
-
- function testSetFieldAsString() {
- $this->get($this->samples() . 'form_with_radio_buttons.html');
- $this->assertTrue($this->setField('tested_field', '2'));
- $this->clickSubmitByName('send');
- $this->assertEqual($this->getUrl(), $this->samples() . 'form_with_radio_buttons.html?tested_field=2&send=click+me');
- }
-}
-
-class TestOfLiveFetching extends SimpleTestAcceptanceTest {
- function setUp() {
- $this->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- }
-
- function testFormWithArrayBasedInputs() {
- $this->get($this->samples() . 'form_with_array_based_inputs.php');
- $this->setField('value[]', '3', '1');
- $this->setField('value[]', '4', '2');
- $this->clickSubmit('Go');
- $this->assertPattern('/QUERY_STRING : value%5B%5D=3&value%5B%5D=4&submit=Go/');
- }
-
- function testFormWithQuotedValues() {
- $this->get($this->samples() . 'form_with_quoted_values.php');
- $this->assertField('a', 'default');
- $this->assertFieldById('text_field', 'default');
- $this->clickSubmit('Go');
- $this->assertPattern('/a=default&submit=Go/');
- }
-
- function testGet() {
- $this->assertTrue($this->get($this->samples() . 'network_confirm.php'));
- $this->assertEqual($this->getUrl(), $this->samples() . 'network_confirm.php');
- $this->assertText('target for the SimpleTest');
- $this->assertPattern('/Request method.*?<dd>GET<\/dd>/');
- $this->assertTitle('Simple test target file');
- $this->assertTitle(new PatternExpectation('/target file/'));
- $this->assertResponse(200);
- $this->assertMime('text/html');
- $this->assertHeader('connection', 'close');
- $this->assertHeader('connection', new PatternExpectation('/los/'));
- }
-
- function testSlowGet() {
- $this->assertTrue($this->get($this->samples() . 'slow_page.php'));
- }
-
- function testTimedOutGet() {
- $this->setConnectionTimeout(1);
- $this->ignoreErrors();
- $this->assertFalse($this->get($this->samples() . 'slow_page.php'));
- }
-
- function testPost() {
- $this->assertTrue($this->post($this->samples() . 'network_confirm.php'));
- $this->assertText('target for the SimpleTest');
- $this->assertPattern('/Request method.*?<dd>POST<\/dd>/');
- }
-
- function testGetWithData() {
- $this->get($this->samples() . 'network_confirm.php', array("a" => "aaa"));
- $this->assertPattern('/Request method.*?<dd>GET<\/dd>/');
- $this->assertText('a=[aaa]');
- }
-
- function testPostWithData() {
- $this->post($this->samples() . 'network_confirm.php', array("a" => "aaa"));
- $this->assertPattern('/Request method.*?<dd>POST<\/dd>/');
- $this->assertText('a=[aaa]');
- }
-
- function testPostWithRecursiveData() {
- $this->post($this->samples() . 'network_confirm.php', array("a" => "aaa"));
- $this->assertPattern('/Request method.*?<dd>POST<\/dd>/');
- $this->assertText('a=[aaa]');
-
- $this->post($this->samples() . 'network_confirm.php', array("a[aa]" => "aaa"));
- $this->assertPattern('/Request method.*?<dd>POST<\/dd>/');
- $this->assertText('a=[aa=[aaa]]');
-
- $this->post($this->samples() . 'network_confirm.php', array("a[aa][aaa]" => "aaaa"));
- $this->assertPattern('/Request method.*?<dd>POST<\/dd>/');
- $this->assertText('a=[aa=[aaa=[aaaa]]]');
-
- $this->post($this->samples() . 'network_confirm.php', array("a" => array("aa" => "aaa")));
- $this->assertPattern('/Request method.*?<dd>POST<\/dd>/');
- $this->assertText('a=[aa=[aaa]]');
-
- $this->post($this->samples() . 'network_confirm.php', array("a" => array("aa" => array("aaa" => "aaaa"))));
- $this->assertPattern('/Request method.*?<dd>POST<\/dd>/');
- $this->assertText('a=[aa=[aaa=[aaaa]]]');
- }
-
- function testRelativeGet() {
- $this->get($this->samples() . 'link_confirm.php');
- $this->assertTrue($this->get('network_confirm.php'));
- $this->assertText('target for the SimpleTest');
- }
-
- function testRelativePost() {
- $this->post($this->samples() . 'link_confirm.php', array('a' => '123'));
- $this->assertTrue($this->post('network_confirm.php'));
- $this->assertText('target for the SimpleTest');
- }
-}
-
-class TestOfLinkFollowing extends SimpleTestAcceptanceTest {
- function setUp() {
- $this->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- }
-
- function testLinkAssertions() {
- $this->get($this->samples() . 'link_confirm.php');
- $this->assertLink('Absolute', $this->samples() . 'network_confirm.php');
- $this->assertLink('Absolute', new PatternExpectation('/confirm/'));
- $this->assertClickable('Absolute');
- }
-
- function testAbsoluteLinkFollowing() {
- $this->get($this->samples() . 'link_confirm.php');
- $this->assertTrue($this->clickLink('Absolute'));
- $this->assertText('target for the SimpleTest');
- }
-
- function testRelativeLinkFollowing() {
- $this->get($this->samples() . 'link_confirm.php');
- $this->assertTrue($this->clickLink('Relative'));
- $this->assertText('target for the SimpleTest');
- }
-
- function testLinkIdFollowing() {
- $this->get($this->samples() . 'link_confirm.php');
- $this->assertLinkById(1);
- $this->assertTrue($this->clickLinkById(1));
- $this->assertText('target for the SimpleTest');
- }
-
- function testAbsoluteUrlBehavesAbsolutely() {
- $this->get($this->samples() . 'link_confirm.php');
- $this->get('http://www.lastcraft.com');
- $this->assertText('No guarantee of quality is given or even intended');
- }
-
- function testRelativeUrlRespectsBaseTag() {
- $this->get($this->samples() . 'base_tag/base_link.html');
- $this->click('Back to test pages');
- $this->assertTitle('Simple test target file');
- }
-}
-
-class TestOfLivePageLinkingWithMinimalLinks extends SimpleTestAcceptanceTest {
- function setUp() {
- $this->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- }
-
- function testClickToExplicitelyNamedSelfReturns() {
- $this->get($this->samples() . 'front_controller_style/a_page.php');
- $this->assertEqual($this->getUrl(), $this->samples() . 'front_controller_style/a_page.php');
- $this->assertTitle('Simple test page with links');
- $this->assertLink('Self');
- $this->clickLink('Self');
- $this->assertTitle('Simple test page with links');
- }
-
- function testClickToMissingPageReturnsToSamePage() {
- $this->get($this->samples() . 'front_controller_style/a_page.php');
- $this->clickLink('No page');
- $this->assertTitle('Simple test page with links');
- $this->assertText('[action=no_page]');
- }
-
- function testClickToBareActionReturnsToSamePage() {
- $this->get($this->samples() . 'front_controller_style/a_page.php');
- $this->clickLink('Bare action');
- $this->assertTitle('Simple test page with links');
- $this->assertText('[action=]');
- }
-
- function testClickToSingleQuestionMarkReturnsToSamePage() {
- $this->get($this->samples() . 'front_controller_style/a_page.php');
- $this->clickLink('Empty query');
- $this->assertTitle('Simple test page with links');
- }
-
- function testClickToEmptyStringReturnsToSamePage() {
- $this->get($this->samples() . 'front_controller_style/a_page.php');
- $this->clickLink('Empty link');
- $this->assertTitle('Simple test page with links');
- }
-
- function testClickToSingleDotGoesToCurrentDirectory() {
- $this->get($this->samples() . 'front_controller_style/a_page.php');
- $this->clickLink('Current directory');
- $this->assertTitle(
- 'Simple test front controller',
- '%s -> index.php needs to be set as a default web server home page');
- }
-
- function testClickBackADirectoryLevel() {
- $this->get($this->samples() . 'front_controller_style/');
- $this->clickLink('Down one');
- $this->assertPattern('|Index of .*?/test|i');
- }
-}
-
-class TestOfLiveFrontControllerEmulation extends SimpleTestAcceptanceTest {
- function setUp() {
- $this->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- }
-
- function testJumpToNamedPage() {
- $this->get($this->samples() . 'front_controller_style/');
- $this->assertText('Simple test front controller');
- $this->clickLink('Index');
- $this->assertResponse(200);
- $this->assertText('[action=index]');
- }
-
- function testJumpToUnnamedPage() {
- $this->get($this->samples() . 'front_controller_style/');
- $this->clickLink('No page');
- $this->assertResponse(200);
- $this->assertText('Simple test front controller');
- $this->assertText('[action=no_page]');
- }
-
- function testJumpToUnnamedPageWithBareParameter() {
- $this->get($this->samples() . 'front_controller_style/');
- $this->clickLink('Bare action');
- $this->assertResponse(200);
- $this->assertText('Simple test front controller');
- $this->assertText('[action=]');
- }
-
- function testJumpToUnnamedPageWithEmptyQuery() {
- $this->get($this->samples() . 'front_controller_style/');
- $this->clickLink('Empty query');
- $this->assertResponse(200);
- $this->assertPattern('/Simple test front controller/');
- $this->assertPattern('/raw get data.*?\[\].*?get data/si');
- }
-
- function testJumpToUnnamedPageWithEmptyLink() {
- $this->get($this->samples() . 'front_controller_style/');
- $this->clickLink('Empty link');
- $this->assertResponse(200);
- $this->assertPattern('/Simple test front controller/');
- $this->assertPattern('/raw get data.*?\[\].*?get data/si');
- }
-
- function testJumpBackADirectoryLevel() {
- $this->get($this->samples() . 'front_controller_style/');
- $this->clickLink('Down one');
- $this->assertPattern('|Index of .*?/test|');
- }
-
- function testSubmitToNamedPage() {
- $this->get($this->samples() . 'front_controller_style/');
- $this->assertText('Simple test front controller');
- $this->clickSubmit('Index');
- $this->assertResponse(200);
- $this->assertText('[action=Index]');
- }
-
- function testSubmitToSameDirectory() {
- $this->get($this->samples() . 'front_controller_style/index.php');
- $this->clickSubmit('Same directory');
- $this->assertResponse(200);
- $this->assertText('[action=Same+directory]');
- }
-
- function testSubmitToEmptyAction() {
- $this->get($this->samples() . 'front_controller_style/index.php');
- $this->clickSubmit('Empty action');
- $this->assertResponse(200);
- $this->assertText('[action=Empty+action]');
- }
-
- function testSubmitToNoAction() {
- $this->get($this->samples() . 'front_controller_style/index.php');
- $this->clickSubmit('No action');
- $this->assertResponse(200);
- $this->assertText('[action=No+action]');
- }
-
- function testSubmitBackADirectoryLevel() {
- $this->get($this->samples() . 'front_controller_style/');
- $this->clickSubmit('Down one');
- $this->assertPattern('|Index of .*?/test|');
- }
-
- function testSubmitToNamedPageWithMixedPostAndGet() {
- $this->get($this->samples() . 'front_controller_style/?a=A');
- $this->assertText('Simple test front controller');
- $this->clickSubmit('Index post');
- $this->assertText('action=[Index post]');
- $this->assertNoText('[a=A]');
- }
-
- function testSubmitToSameDirectoryMixedPostAndGet() {
- $this->get($this->samples() . 'front_controller_style/index.php?a=A');
- $this->clickSubmit('Same directory post');
- $this->assertText('action=[Same directory post]');
- $this->assertNoText('[a=A]');
- }
-
- function testSubmitToEmptyActionMixedPostAndGet() {
- $this->get($this->samples() . 'front_controller_style/index.php?a=A');
- $this->clickSubmit('Empty action post');
- $this->assertText('action=[Empty action post]');
- $this->assertText('[a=A]');
- }
-
- function testSubmitToNoActionMixedPostAndGet() {
- $this->get($this->samples() . 'front_controller_style/index.php?a=A');
- $this->clickSubmit('No action post');
- $this->assertText('action=[No action post]');
- $this->assertText('[a=A]');
- }
-}
-
-class TestOfLiveHeaders extends SimpleTestAcceptanceTest {
- function setUp() {
- $this->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- }
-
- function testConfirmingHeaderExistence() {
- $this->get('http://www.lastcraft.com/');
- $this->assertHeader('content-type');
- $this->assertHeader('content-type', 'text/html');
- $this->assertHeader('content-type', new PatternExpectation('/HTML/i'));
- $this->assertNoHeader('WWW-Authenticate');
- }
-}
-
-class TestOfLiveRedirects extends SimpleTestAcceptanceTest {
- function setUp() {
- $this->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- }
-
- function testNoRedirects() {
- $this->setMaximumRedirects(0);
- $this->get($this->samples() . 'redirect.php');
- $this->assertTitle('Redirection test');
- }
-
- function testRedirects() {
- $this->setMaximumRedirects(1);
- $this->get($this->samples() . 'redirect.php');
- $this->assertTitle('Simple test target file');
- }
-
- function testRedirectLosesGetData() {
- $this->get($this->samples() . 'redirect.php', array('a' => 'aaa'));
- $this->assertNoText('a=[aaa]');
- }
-
- function testRedirectKeepsExtraRequestDataOfItsOwn() {
- $this->get($this->samples() . 'redirect.php');
- $this->assertText('r=[rrr]');
- }
-
- function testRedirectLosesPostData() {
- $this->post($this->samples() . 'redirect.php', array('a' => 'aaa'));
- $this->assertTitle('Simple test target file');
- $this->assertNoText('a=[aaa]');
- }
-
- function testRedirectWithBaseUrlChange() {
- $this->get($this->samples() . 'base_change_redirect.php');
- $this->assertTitle('Simple test target file in folder');
- $this->get($this->samples() . 'path/base_change_redirect.php');
- $this->assertTitle('Simple test target file');
- }
-
- function testRedirectWithDoubleBaseUrlChange() {
- $this->get($this->samples() . 'double_base_change_redirect.php');
- $this->assertTitle('Simple test target file');
- }
-}
-
-class TestOfLiveCookies extends SimpleTestAcceptanceTest {
- function setUp() {
- $this->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- }
-
- function here() {
- return new SimpleUrl($this->samples());
- }
-
- function thisHost() {
- $here = $this->here();
- return $here->getHost();
- }
-
- function thisPath() {
- $here = $this->here();
- return $here->getPath();
- }
-
- function testCookieSettingAndAssertions() {
- $this->setCookie('a', 'Test cookie a');
- $this->setCookie('b', 'Test cookie b', $this->thisHost());
- $this->setCookie('c', 'Test cookie c', $this->thisHost(), $this->thisPath());
- $this->get($this->samples() . 'network_confirm.php');
- $this->assertText('Test cookie a');
- $this->assertText('Test cookie b');
- $this->assertText('Test cookie c');
- $this->assertCookie('a');
- $this->assertCookie('b', 'Test cookie b');
- $this->assertTrue($this->getCookie('c') == 'Test cookie c');
- }
-
- function testNoCookieSetWhenCookiesDisabled() {
- $this->setCookie('a', 'Test cookie a');
- $this->ignoreCookies();
- $this->get($this->samples() . 'network_confirm.php');
- $this->assertNoText('Test cookie a');
- }
-
- function testCookieReading() {
- $this->get($this->samples() . 'set_cookies.php');
- $this->assertCookie('session_cookie', 'A');
- $this->assertCookie('short_cookie', 'B');
- $this->assertCookie('day_cookie', 'C');
- }
-
- function testNoCookie() {
- $this->assertNoCookie('aRandomCookie');
- }
-
- function testNoCookieReadingWhenCookiesDisabled() {
- $this->ignoreCookies();
- $this->get($this->samples() . 'set_cookies.php');
- $this->assertNoCookie('session_cookie');
- $this->assertNoCookie('short_cookie');
- $this->assertNoCookie('day_cookie');
- }
-
- function testCookiePatternAssertions() {
- $this->get($this->samples() . 'set_cookies.php');
- $this->assertCookie('session_cookie', new PatternExpectation('/a/i'));
- }
-
- function testTemporaryCookieExpiry() {
- $this->get($this->samples() . 'set_cookies.php');
- $this->restart();
- $this->assertNoCookie('session_cookie');
- $this->assertCookie('day_cookie', 'C');
- }
-
- function testTimedCookieExpiryWith100SecondMargin() {
- $this->get($this->samples() . 'set_cookies.php');
- $this->ageCookies(3600);
- $this->restart(time() + 100);
- $this->assertNoCookie('session_cookie');
- $this->assertNoCookie('hour_cookie');
- $this->assertCookie('day_cookie', 'C');
- }
-
- function testNoClockOverDriftBy100Seconds() {
- $this->get($this->samples() . 'set_cookies.php');
- $this->restart(time() + 200);
- $this->assertNoCookie(
- 'short_cookie',
- '%s -> Please check your computer clock setting if you are not using NTP');
- }
-
- function testNoClockUnderDriftBy100Seconds() {
- $this->get($this->samples() . 'set_cookies.php');
- $this->restart(time() + 0);
- $this->assertCookie(
- 'short_cookie',
- 'B',
- '%s -> Please check your computer clock setting if you are not using NTP');
- }
-
- function testCookiePath() {
- $this->get($this->samples() . 'set_cookies.php');
- $this->assertNoCookie('path_cookie', 'D');
- $this->get('./path/show_cookies.php');
- $this->assertPattern('/path_cookie/');
- $this->assertCookie('path_cookie', 'D');
- }
-}
-
-class LiveTestOfForms extends SimpleTestAcceptanceTest {
- function setUp() {
- $this->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- }
-
- function testSimpleSubmit() {
- $this->get($this->samples() . 'form.html');
- $this->assertTrue($this->clickSubmit('Go!'));
- $this->assertPattern('/Request method.*?<dd>POST<\/dd>/');
- $this->assertText('go=[Go!]');
- }
-
- function testDefaultFormValues() {
- $this->get($this->samples() . 'form.html');
- $this->assertFieldByName('a', '');
- $this->assertFieldByName('b', 'Default text');
- $this->assertFieldByName('c', '');
- $this->assertFieldByName('d', 'd1');
- $this->assertFieldByName('e', false);
- $this->assertFieldByName('f', 'on');
- $this->assertFieldByName('g', 'g3');
- $this->assertFieldByName('h', 2);
- $this->assertFieldByName('go', 'Go!');
- $this->assertClickable('Go!');
- $this->assertSubmit('Go!');
- $this->assertTrue($this->clickSubmit('Go!'));
- $this->assertText('go=[Go!]');
- $this->assertText('a=[]');
- $this->assertText('b=[Default text]');
- $this->assertText('c=[]');
- $this->assertText('d=[d1]');
- $this->assertNoText('e=[');
- $this->assertText('f=[on]');
- $this->assertText('g=[g3]');
- }
-
- function testFormSubmissionByButtonLabel() {
- $this->get($this->samples() . 'form.html');
- $this->setFieldByName('a', 'aaa');
- $this->setFieldByName('b', 'bbb');
- $this->setFieldByName('c', 'ccc');
- $this->setFieldByName('d', 'D2');
- $this->setFieldByName('e', 'on');
- $this->setFieldByName('f', false);
- $this->setFieldByName('g', 'g2');
- $this->setFieldByName('h', 1);
- $this->assertTrue($this->clickSubmit('Go!'));
- $this->assertText('a=[aaa]');
- $this->assertText('b=[bbb]');
- $this->assertText('c=[ccc]');
- $this->assertText('d=[d2]');
- $this->assertText('e=[on]');
- $this->assertNoText('f=[');
- $this->assertText('g=[g2]');
- }
-
- function testAdditionalFormValues() {
- $this->get($this->samples() . 'form.html');
- $this->assertTrue($this->clickSubmit('Go!', array('add' => 'A')));
- $this->assertText('go=[Go!]');
- $this->assertText('add=[A]');
- }
-
- function testFormSubmissionByName() {
- $this->get($this->samples() . 'form.html');
- $this->setFieldByName('a', 'A');
- $this->assertTrue($this->clickSubmitByName('go'));
- $this->assertText('a=[A]');
- }
-
- function testFormSubmissionByNameAndAdditionalParameters() {
- $this->get($this->samples() . 'form.html');
- $this->assertTrue($this->clickSubmitByName('go', array('add' => 'A')));
- $this->assertText('go=[Go!]');
- $this->assertText('add=[A]');
- }
-
- function testFormSubmissionBySubmitButtonLabeledSubmit() {
- $this->get($this->samples() . 'form.html');
- $this->assertTrue($this->clickSubmitByName('test'));
- $this->assertText('test=[Submit]');
- }
-
- function testFormSubmissionWithIds() {
- $this->get($this->samples() . 'form.html');
- $this->assertFieldById(1, '');
- $this->assertFieldById(2, 'Default text');
- $this->assertFieldById(3, '');
- $this->assertFieldById(4, 'd1');
- $this->assertFieldById(5, false);
- $this->assertFieldById(6, 'on');
- $this->assertFieldById(8, 'g3');
- $this->assertFieldById(11, 2);
- $this->setFieldById(1, 'aaa');
- $this->setFieldById(2, 'bbb');
- $this->setFieldById(3, 'ccc');
- $this->setFieldById(4, 'D2');
- $this->setFieldById(5, 'on');
- $this->setFieldById(6, false);
- $this->setFieldById(8, 'g2');
- $this->setFieldById(11, 'H1');
- $this->assertTrue($this->clickSubmitById(99));
- $this->assertText('a=[aaa]');
- $this->assertText('b=[bbb]');
- $this->assertText('c=[ccc]');
- $this->assertText('d=[d2]');
- $this->assertText('e=[on]');
- $this->assertNoText('f=[');
- $this->assertText('g=[g2]');
- $this->assertText('h=[1]');
- $this->assertText('go=[Go!]');
- }
-
- function testFormSubmissionWithIdsAndAdditionnalData() {
- $this->get($this->samples() . 'form.html');
- $this->assertTrue($this->clickSubmitById(99, array('additionnal' => "data")));
- $this->assertText('additionnal=[data]');
- }
-
- function testFormSubmissionWithLabels() {
- $this->get($this->samples() . 'form.html');
- $this->assertField('Text A', '');
- $this->assertField('Text B', 'Default text');
- $this->assertField('Text area C', '');
- $this->assertField('Selection D', 'd1');
- $this->assertField('Checkbox E', false);
- $this->assertField('Checkbox F', 'on');
- $this->assertField('3', 'g3');
- $this->assertField('Selection H', 2);
- $this->setField('Text A', 'aaa');
- $this->setField('Text B', 'bbb');
- $this->setField('Text area C', 'ccc');
- $this->setField('Selection D', 'D2');
- $this->setField('Checkbox E', 'on');
- $this->setField('Checkbox F', false);
- $this->setField('2', 'g2');
- $this->setField('Selection H', 'H1');
- $this->clickSubmit('Go!');
- $this->assertText('a=[aaa]');
- $this->assertText('b=[bbb]');
- $this->assertText('c=[ccc]');
- $this->assertText('d=[d2]');
- $this->assertText('e=[on]');
- $this->assertNoText('f=[');
- $this->assertText('g=[g2]');
- $this->assertText('h=[1]');
- $this->assertText('go=[Go!]');
- }
-
- function testSettingCheckboxWithBooleanTrueSetsUnderlyingValue() {
- $this->get($this->samples() . 'form.html');
- $this->setField('Checkbox E', true);
- $this->assertField('Checkbox E', 'on');
- $this->clickSubmit('Go!');
- $this->assertText('e=[on]');
- }
-
- function testFormSubmissionWithMixedPostAndGet() {
- $this->get($this->samples() . 'form_with_mixed_post_and_get.html');
- $this->setField('Text A', 'Hello');
- $this->assertTrue($this->clickSubmit('Go!'));
- $this->assertText('a=[Hello]');
- $this->assertText('x=[X]');
- $this->assertText('y=[Y]');
- }
-
- function testFormSubmissionWithMixedPostAndEncodedGet() {
- $this->get($this->samples() . 'form_with_mixed_post_and_get.html');
- $this->setField('Text B', 'Hello');
- $this->assertTrue($this->clickSubmit('Go encoded!'));
- $this->assertText('b=[Hello]');
- $this->assertText('x=[X]');
- $this->assertText('y=[Y]');
- }
-
- function testFormSubmissionWithoutAction() {
- $this->get($this->samples() . 'form_without_action.php?test=test');
- $this->assertText('_GET : [test]');
- $this->assertTrue($this->clickSubmit('Submit Post With Empty Action'));
- $this->assertText('_GET : [test]');
- $this->assertText('_POST : [test]');
- }
-
- function testImageSubmissionByLabel() {
- $this->get($this->samples() . 'form.html');
- $this->assertImage('Image go!');
- $this->assertTrue($this->clickImage('Image go!', 10, 12));
- $this->assertText('go_x=[10]');
- $this->assertText('go_y=[12]');
- }
-
- function testImageSubmissionByLabelWithAdditionalParameters() {
- $this->get($this->samples() . 'form.html');
- $this->assertTrue($this->clickImage('Image go!', 10, 12, array('add' => 'A')));
- $this->assertText('add=[A]');
- }
-
- function testImageSubmissionByName() {
- $this->get($this->samples() . 'form.html');
- $this->assertTrue($this->clickImageByName('go', 10, 12));
- $this->assertText('go_x=[10]');
- $this->assertText('go_y=[12]');
- }
-
- function testImageSubmissionById() {
- $this->get($this->samples() . 'form.html');
- $this->assertTrue($this->clickImageById(97, 10, 12));
- $this->assertText('go_x=[10]');
- $this->assertText('go_y=[12]');
- }
-
- function testButtonSubmissionByLabel() {
- $this->get($this->samples() . 'form.html');
- $this->assertTrue($this->clickSubmit('Button go!', 10, 12));
- $this->assertPattern('/go=\[ButtonGo\]/s');
- }
-
- function testNamelessSubmitSendsNoValue() {
- $this->get($this->samples() . 'form_with_unnamed_submit.html');
- $this->click('Go!');
- $this->assertNoText('Go!');
- $this->assertNoText('submit');
- }
-
- function testNamelessImageSendsXAndYValues() {
- $this->get($this->samples() . 'form_with_unnamed_submit.html');
- $this->clickImage('Image go!', 4, 5);
- $this->assertNoText('ImageGo');
- $this->assertText('x=[4]');
- $this->assertText('y=[5]');
- }
-
- function testNamelessButtonSendsNoValue() {
- $this->get($this->samples() . 'form_with_unnamed_submit.html');
- $this->click('Button Go!');
- $this->assertNoText('ButtonGo');
- }
-
- function testSelfSubmit() {
- $this->get($this->samples() . 'self_form.php');
- $this->assertNoText('[Submitted]');
- $this->assertNoText('[Wrong form]');
- $this->assertTrue($this->clickSubmit());
- $this->assertText('[Submitted]');
- $this->assertNoText('[Wrong form]');
- $this->assertTitle('Test of form self submission');
- }
-
- function testSelfSubmitWithParameters() {
- $this->get($this->samples() . 'self_form.php');
- $this->setFieldByName('visible', 'Resent');
- $this->assertTrue($this->clickSubmit());
- $this->assertText('[Resent]');
- }
-
- function testSettingOfBlankOption() {
- $this->get($this->samples() . 'form.html');
- $this->assertTrue($this->setFieldByName('d', ''));
- $this->clickSubmit('Go!');
- $this->assertText('d=[]');
- }
-
- function testAssertingFieldValueWithPattern() {
- $this->get($this->samples() . 'form.html');
- $this->setField('c', 'A very long string');
- $this->assertField('c', new PatternExpectation('/very long/'));
- }
-
- function testSendingMultipartFormDataEncodedForm() {
- $this->get($this->samples() . 'form_data_encoded_form.html');
- $this->assertField('Text A', '');
- $this->assertField('Text B', 'Default text');
- $this->assertField('Text area C', '');
- $this->assertField('Selection D', 'd1');
- $this->assertField('Checkbox E', false);
- $this->assertField('Checkbox F', 'on');
- $this->assertField('3', 'g3');
- $this->assertField('Selection H', 2);
- $this->setField('Text A', 'aaa');
- $this->setField('Text B', 'bbb');
- $this->setField('Text area C', 'ccc');
- $this->setField('Selection D', 'D2');
- $this->setField('Checkbox E', 'on');
- $this->setField('Checkbox F', false);
- $this->setField('2', 'g2');
- $this->setField('Selection H', 'H1');
- $this->assertTrue($this->clickSubmit('Go!'));
- $this->assertText('a=[aaa]');
- $this->assertText('b=[bbb]');
- $this->assertText('c=[ccc]');
- $this->assertText('d=[d2]');
- $this->assertText('e=[on]');
- $this->assertNoText('f=[');
- $this->assertText('g=[g2]');
- $this->assertText('h=[1]');
- $this->assertText('go=[Go!]');
- }
-
- function testSettingVariousBlanksInFields() {
- $this->get($this->samples() . 'form_with_false_defaults.html');
- $this->assertField('Text A', '');
- $this->setField('Text A', '0');
- $this->assertField('Text A', '0');
- $this->assertField('Text area B', '');
- $this->setField('Text area B', '0');
- $this->assertField('Text area B', '0');
- $this->assertField('Selection D', '');
- $this->setField('Selection D', 'D2');
- $this->assertField('Selection D', 'D2');
- $this->setField('Selection D', 'D3');
- $this->assertField('Selection D', '0');
- $this->setField('Selection D', 'D4');
- $this->assertField('Selection D', '?');
- $this->assertField('Checkbox E', '');
- $this->assertField('Checkbox F', 'on');
- $this->assertField('Checkbox G', '0');
- $this->assertField('Checkbox H', '?');
- $this->assertFieldByName('i', 'on');
- $this->setFieldByName('i', '');
- $this->assertFieldByName('i', '');
- $this->setFieldByName('i', '0');
- $this->assertFieldByName('i', '0');
- $this->setFieldByName('i', '?');
- $this->assertFieldByName('i', '?');
- }
-
- function testDefaultValueOfTextareaHasNewlinesAndWhitespacePreserved() {
- $this->get($this->samples() . 'form_with_false_defaults.html');
- $this->assertField('Text area C', ' ');
- }
-
- function chars($t) {
- for ($i = 0; $i < strlen($t); $i++) {
- print "[$t[$i]]";
- }
- }
-
- function testSubmissionOfBlankFields() {
- $this->get($this->samples() . 'form_with_false_defaults.html');
- $this->setField('Text A', '');
- $this->setField('Text area B', '');
- $this->setFieldByName('i', '');
- $this->click('Go!');
- $this->assertText('a=[]');
- $this->assertText('b=[]');
- $this->assertText('d=[]');
- $this->assertText('e=[]');
- $this->assertText('i=[]');
- }
-
- function testDefaultValueOfTextareaHasNewlinesAndWhitespacePreservedOnSubmission() {
- $this->get($this->samples() . 'form_with_false_defaults.html');
- $this->click('Go!');
- $this->assertPattern('/c=\[ \]/');
- }
-
- function testSubmissionOfEmptyValues() {
- $this->get($this->samples() . 'form_with_false_defaults.html');
- $this->setField('Selection D', 'D2');
- $this->click('Go!');
- $this->assertText('a=[]');
- $this->assertText('b=[]');
- $this->assertText('d=[D2]');
- $this->assertText('f=[on]');
- $this->assertText('i=[on]');
- }
-
- function testSubmissionOfZeroes() {
- $this->get($this->samples() . 'form_with_false_defaults.html');
- $this->setField('Text A', '0');
- $this->setField('Text area B', '0');
- $this->setField('Selection D', 'D3');
- $this->setFieldByName('i', '0');
- $this->click('Go!');
- $this->assertText('a=[0]');
- $this->assertText('b=[0]');
- $this->assertText('d=[0]');
- $this->assertText('g=[0]');
- $this->assertText('i=[0]');
- }
-
- function testSubmissionOfQuestionMarks() {
- $this->get($this->samples() . 'form_with_false_defaults.html');
- $this->setField('Text A', '?');
- $this->setField('Text area B', '?');
- $this->setField('Selection D', 'D4');
- $this->setFieldByName('i', '?');
- $this->click('Go!');
- $this->assertText('a=[?]');
- $this->assertText('b=[?]');
- $this->assertText('d=[?]');
- $this->assertText('h=[?]');
- $this->assertText('i=[?]');
- }
-
- function testSubmissionOfHtmlEncodedValues() {
- $this->get($this->samples() . 'form_with_tricky_defaults.html');
- $this->assertField('Text A', '&\'"<>');
- $this->assertField('Text B', '"');
- $this->assertField('Text area C', '&\'"<>');
- $this->assertField('Selection D', "'");
- $this->assertField('Checkbox E', '&\'"<>');
- $this->assertField('Checkbox F', false);
- $this->assertFieldByname('i', "'");
- $this->click('Go!');
- $this->assertText('a=[&\'"<>, "]');
- $this->assertText('c=[&\'"<>]');
- $this->assertText("d=[']");
- $this->assertText('e=[&\'"<>]');
- $this->assertText("i=[']");
- }
-
- function testFormActionRespectsBaseTag() {
- $this->get($this->samples() . 'base_tag/form.html');
- $this->assertTrue($this->clickSubmit('Go!'));
- $this->assertText('go=[Go!]');
- $this->assertText('a=[]');
- }
-}
-
-class TestOfLiveMultiValueWidgets extends SimpleTestAcceptanceTest {
- function setUp() {
- $this->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- }
-
- function testDefaultFormValueSubmission() {
- $this->get($this->samples() . 'multiple_widget_form.html');
- $this->assertFieldByName('a', array('a2', 'a3'));
- $this->assertFieldByName('b', array('b2', 'b3'));
- $this->assertFieldByName('c[]', array('c2', 'c3'));
- $this->assertFieldByName('d', array('2', '3'));
- $this->assertFieldByName('e', array('2', '3'));
- $this->assertTrue($this->clickSubmit('Go!'));
- $this->assertText('a=[a2, a3]');
- $this->assertText('b=[b2, b3]');
- $this->assertText('c=[c2, c3]');
- $this->assertText('d=[2, 3]');
- $this->assertText('e=[2, 3]');
- }
-
- function testSubmittingMultipleValues() {
- $this->get($this->samples() . 'multiple_widget_form.html');
- $this->setFieldByName('a', array('a1', 'a4'));
- $this->assertFieldByName('a', array('a1', 'a4'));
- $this->assertFieldByName('a', array('a4', 'a1'));
- $this->setFieldByName('b', array('b1', 'b4'));
- $this->assertFieldByName('b', array('b1', 'b4'));
- $this->setFieldByName('c[]', array('c1', 'c4'));
- $this->assertField('c[]', array('c1', 'c4'));
- $this->setFieldByName('d', array('1', '4'));
- $this->assertField('d', array('1', '4'));
- $this->setFieldByName('e', array('e1', 'e4'));
- $this->assertField('e', array('1', '4'));
- $this->assertTrue($this->clickSubmit('Go!'));
- $this->assertText('a=[a1, a4]');
- $this->assertText('b=[b1, b4]');
- $this->assertText('c=[c1, c4]');
- $this->assertText('d=[1, 4]');
- $this->assertText('e=[1, 4]');
- }
-
- function testSettingByOptionValue() {
- $this->get($this->samples() . 'multiple_widget_form.html');
- $this->setFieldByName('d', array('1', '4'));
- $this->assertField('d', array('1', '4'));
- $this->assertTrue($this->clickSubmit('Go!'));
- $this->assertText('d=[1, 4]');
- }
-
- function testSubmittingMultipleValuesByLabel() {
- $this->get($this->samples() . 'multiple_widget_form.html');
- $this->setField('Multiple selection A', array('a1', 'a4'));
- $this->assertField('Multiple selection A', array('a1', 'a4'));
- $this->assertField('Multiple selection A', array('a4', 'a1'));
- $this->setField('multiple selection C', array('c1', 'c4'));
- $this->assertField('multiple selection C', array('c1', 'c4'));
- $this->assertTrue($this->clickSubmit('Go!'));
- $this->assertText('a=[a1, a4]');
- $this->assertText('c=[c1, c4]');
- }
-
- function testSavantStyleHiddenFieldDefaults() {
- $this->get($this->samples() . 'savant_style_form.html');
- $this->assertFieldByName('a', array('a0'));
- $this->assertFieldByName('b', array('b0'));
- $this->assertTrue($this->clickSubmit('Go!'));
- $this->assertText('a=[a0]');
- $this->assertText('b=[b0]');
- }
-
- function testSavantStyleHiddenDefaultsAreOverridden() {
- $this->get($this->samples() . 'savant_style_form.html');
- $this->assertTrue($this->setFieldByName('a', array('a1')));
- $this->assertTrue($this->setFieldByName('b', 'b1'));
- $this->assertTrue($this->clickSubmit('Go!'));
- $this->assertText('a=[a1]');
- $this->assertText('b=[b1]');
- }
-
- function testSavantStyleFormSettingById() {
- $this->get($this->samples() . 'savant_style_form.html');
- $this->assertFieldById(1, array('a0'));
- $this->assertFieldById(4, array('b0'));
- $this->assertTrue($this->setFieldById(2, 'a1'));
- $this->assertTrue($this->setFieldById(5, 'b1'));
- $this->assertTrue($this->clickSubmitById(99));
- $this->assertText('a=[a1]');
- $this->assertText('b=[b1]');
- }
-}
-
-class TestOfFileUploads extends SimpleTestAcceptanceTest {
- function setUp() {
- $this->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- }
-
- function testSingleFileUpload() {
- $this->get($this->samples() . 'upload_form.html');
- $this->assertTrue($this->setField('Content:',
- dirname(__FILE__) . '/support/upload_sample.txt'));
- $this->assertField('Content:', dirname(__FILE__) . '/support/upload_sample.txt');
- $this->click('Go!');
- $this->assertText('Sample for testing file upload');
- }
-
- function testMultipleFileUpload() {
- $this->get($this->samples() . 'upload_form.html');
- $this->assertTrue($this->setField('Content:',
- dirname(__FILE__) . '/support/upload_sample.txt'));
- $this->assertTrue($this->setField('Supplemental:',
- dirname(__FILE__) . '/support/supplementary_upload_sample.txt'));
- $this->assertField('Supplemental:',
- dirname(__FILE__) . '/support/supplementary_upload_sample.txt');
- $this->click('Go!');
- $this->assertText('Sample for testing file upload');
- $this->assertText('Some more text content');
- }
-
- function testBinaryFileUpload() {
- $this->get($this->samples() . 'upload_form.html');
- $this->assertTrue($this->setField('Content:',
- dirname(__FILE__) . '/support/latin1_sample'));
- $this->click('Go!');
- $this->assertText(
- implode('', file(dirname(__FILE__) . '/support/latin1_sample')));
- }
-}
-
-class TestOfLiveHistoryNavigation extends SimpleTestAcceptanceTest {
- function setUp() {
- $this->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- }
-
- function testRetry() {
- $this->get($this->samples() . 'cookie_based_counter.php');
- $this->assertPattern('/count: 1/i');
- $this->retry();
- $this->assertPattern('/count: 2/i');
- $this->retry();
- $this->assertPattern('/count: 3/i');
- }
-
- function testOfBackButton() {
- $this->get($this->samples() . '1.html');
- $this->clickLink('2');
- $this->assertTitle('2');
- $this->assertTrue($this->back());
- $this->assertTitle('1');
- $this->assertTrue($this->forward());
- $this->assertTitle('2');
- $this->assertFalse($this->forward());
- }
-
- function testGetRetryResubmitsData() {
- $this->assertTrue($this->get(
- $this->samples() . 'network_confirm.php?a=aaa'));
- $this->assertPattern('/Request method.*?<dd>GET<\/dd>/');
- $this->assertText('a=[aaa]');
- $this->retry();
- $this->assertPattern('/Request method.*?<dd>GET<\/dd>/');
- $this->assertText('a=[aaa]');
- }
-
- function testGetRetryResubmitsExtraData() {
- $this->assertTrue($this->get(
- $this->samples() . 'network_confirm.php',
- array('a' => 'aaa')));
- $this->assertPattern('/Request method.*?<dd>GET<\/dd>/');
- $this->assertText('a=[aaa]');
- $this->retry();
- $this->assertPattern('/Request method.*?<dd>GET<\/dd>/');
- $this->assertText('a=[aaa]');
- }
-
- function testPostRetryResubmitsData() {
- $this->assertTrue($this->post(
- $this->samples() . 'network_confirm.php',
- array('a' => 'aaa')));
- $this->assertPattern('/Request method.*?<dd>POST<\/dd>/');
- $this->assertText('a=[aaa]');
- $this->retry();
- $this->assertPattern('/Request method.*?<dd>POST<\/dd>/');
- $this->assertText('a=[aaa]');
- }
-
- function testGetRetryResubmitsRepeatedData() {
- $this->assertTrue($this->get(
- $this->samples() . 'network_confirm.php?a=1&a=2'));
- $this->assertPattern('/Request method.*?<dd>GET<\/dd>/');
- $this->assertText('a=[1, 2]');
- $this->retry();
- $this->assertPattern('/Request method.*?<dd>GET<\/dd>/');
- $this->assertText('a=[1, 2]');
- }
-}
-
-class TestOfLiveAuthentication extends SimpleTestAcceptanceTest {
- function setUp() {
- $this->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- }
-
- function testChallengeFromProtectedPage() {
- $this->get($this->samples() . 'protected/');
- $this->assertResponse(401);
- $this->assertAuthentication('Basic');
- $this->assertRealm('SimpleTest basic authentication');
- $this->assertRealm(new PatternExpectation('/simpletest/i'));
- $this->authenticate('test', 'secret');
- $this->assertResponse(200);
- $this->retry();
- $this->assertResponse(200);
- }
-
- function testTrailingSlashImpliedWithinRealm() {
- $this->get($this->samples() . 'protected/');
- $this->authenticate('test', 'secret');
- $this->assertResponse(200);
- $this->get($this->samples() . 'protected');
- $this->assertResponse(200);
- }
-
- function testTrailingSlashImpliedSettingRealm() {
- $this->get($this->samples() . 'protected');
- $this->authenticate('test', 'secret');
- $this->assertResponse(200);
- $this->get($this->samples() . 'protected/');
- $this->assertResponse(200);
- }
-
- function testEncodedAuthenticationFetchesPage() {
- $this->get('http://test:secret@www.lastcraft.com/test/protected/');
- $this->assertResponse(200);
- }
-
- function testEncodedAuthenticationFetchesPageAfterTrailingSlashRedirect() {
- $this->get('http://test:secret@www.lastcraft.com/test/protected');
- $this->assertResponse(200);
- }
-
- function testRealmExtendsToWholeDirectory() {
- $this->get($this->samples() . 'protected/1.html');
- $this->authenticate('test', 'secret');
- $this->clickLink('2');
- $this->assertResponse(200);
- $this->clickLink('3');
- $this->assertResponse(200);
- }
-
- function testRedirectKeepsAuthentication() {
- $this->get($this->samples() . 'protected/local_redirect.php');
- $this->authenticate('test', 'secret');
- $this->assertTitle('Simple test target file');
- }
-
- function testRedirectKeepsEncodedAuthentication() {
- $this->get('http://test:secret@www.lastcraft.com/test/protected/local_redirect.php');
- $this->assertResponse(200);
- $this->assertTitle('Simple test target file');
- }
-
- function testSessionRestartLosesAuthentication() {
- $this->get($this->samples() . 'protected/');
- $this->authenticate('test', 'secret');
- $this->assertResponse(200);
- $this->restart();
- $this->get($this->samples() . 'protected/');
- $this->assertResponse(401);
- }
-}
-
-class TestOfLoadingFrames extends SimpleTestAcceptanceTest {
- function setUp() {
- $this->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- }
-
- function testNoFramesContentWhenFramesDisabled() {
- $this->ignoreFrames();
- $this->get($this->samples() . 'one_page_frameset.html');
- $this->assertTitle('Frameset for testing of SimpleTest');
- $this->assertText('This content is for no frames only');
- }
-
- function testPatternMatchCanReadTheOnlyFrame() {
- $this->get($this->samples() . 'one_page_frameset.html');
- $this->assertText('A target for the SimpleTest test suite');
- $this->assertNoText('This content is for no frames only');
- }
-
- function testMessyFramesetResponsesByName() {
- $this->assertTrue($this->get(
- $this->samples() . 'messy_frameset.html'));
- $this->assertTitle('Frameset for testing of SimpleTest');
-
- $this->assertTrue($this->setFrameFocus('Front controller'));
- $this->assertResponse(200);
- $this->assertText('Simple test front controller');
-
- $this->assertTrue($this->setFrameFocus('One'));
- $this->assertResponse(200);
- $this->assertLink('2');
-
- $this->assertTrue($this->setFrameFocus('Frame links'));
- $this->assertResponse(200);
- $this->assertLink('Set one to 2');
-
- $this->assertTrue($this->setFrameFocus('Counter'));
- $this->assertResponse(200);
- $this->assertText('Count: 1');
-
- $this->assertTrue($this->setFrameFocus('Redirected'));
- $this->assertResponse(200);
- $this->assertText('r=rrr');
-
- $this->assertTrue($this->setFrameFocus('Protected'));
- $this->assertResponse(401);
-
- $this->assertTrue($this->setFrameFocus('Protected redirect'));
- $this->assertResponse(401);
-
- $this->assertTrue($this->setFrameFocusByIndex(1));
- $this->assertResponse(200);
- $this->assertText('Simple test front controller');
-
- $this->assertTrue($this->setFrameFocusByIndex(2));
- $this->assertResponse(200);
- $this->assertLink('2');
-
- $this->assertTrue($this->setFrameFocusByIndex(3));
- $this->assertResponse(200);
- $this->assertLink('Set one to 2');
-
- $this->assertTrue($this->setFrameFocusByIndex(4));
- $this->assertResponse(200);
- $this->assertText('Count: 1');
-
- $this->assertTrue($this->setFrameFocusByIndex(5));
- $this->assertResponse(200);
- $this->assertText('r=rrr');
-
- $this->assertTrue($this->setFrameFocusByIndex(6));
- $this->assertResponse(401);
-
- $this->assertTrue($this->setFrameFocusByIndex(7));
- }
-
- function testReloadingFramesetPage() {
- $this->get($this->samples() . 'messy_frameset.html');
- $this->assertText('Count: 1');
- $this->retry();
- $this->assertText('Count: 2');
- $this->retry();
- $this->assertText('Count: 3');
- }
-
- function testReloadingSingleFrameWithCookieCounter() {
- $this->get($this->samples() . 'counting_frameset.html');
- $this->setFrameFocus('a');
- $this->assertText('Count: 1');
- $this->setFrameFocus('b');
- $this->assertText('Count: 2');
-
- $this->setFrameFocus('a');
- $this->retry();
- $this->assertText('Count: 3');
- $this->retry();
- $this->assertText('Count: 4');
- $this->setFrameFocus('b');
- $this->assertText('Count: 2');
- }
-
- function testReloadingFrameWhenUnfocusedReloadsWholeFrameset() {
- $this->get($this->samples() . 'counting_frameset.html');
- $this->setFrameFocus('a');
- $this->assertText('Count: 1');
- $this->setFrameFocus('b');
- $this->assertText('Count: 2');
-
- $this->clearFrameFocus('a');
- $this->retry();
-
- $this->assertTitle('Frameset for testing of SimpleTest');
- $this->setFrameFocus('a');
- $this->assertText('Count: 3');
- $this->setFrameFocus('b');
- $this->assertText('Count: 4');
- }
-
- function testClickingNormalLinkReplacesJustThatFrame() {
- $this->get($this->samples() . 'messy_frameset.html');
- $this->clickLink('2');
- $this->assertLink('3');
- $this->assertText('Simple test front controller');
- }
-
- function testJumpToNamedPageReplacesJustThatFrame() {
- $this->get($this->samples() . 'messy_frameset.html');
- $this->assertPattern('/Simple test front controller/');
- $this->clickLink('Index');
- $this->assertResponse(200);
- $this->assertText('[action=index]');
- $this->assertText('Count: 1');
- }
-
- function testJumpToUnnamedPageReplacesJustThatFrame() {
- $this->get($this->samples() . 'messy_frameset.html');
- $this->clickLink('No page');
- $this->assertResponse(200);
- $this->assertText('Simple test front controller');
- $this->assertText('[action=no_page]');
- $this->assertText('Count: 1');
- }
-
- function testJumpToUnnamedPageWithBareParameterReplacesJustThatFrame() {
- $this->get($this->samples() . 'messy_frameset.html');
- $this->clickLink('Bare action');
- $this->assertResponse(200);
- $this->assertText('Simple test front controller');
- $this->assertText('[action=]');
- $this->assertText('Count: 1');
- }
-
- function testJumpToUnnamedPageWithEmptyQueryReplacesJustThatFrame() {
- $this->get($this->samples() . 'messy_frameset.html');
- $this->clickLink('Empty query');
- $this->assertResponse(200);
- $this->assertPattern('/Simple test front controller/');
- $this->assertPattern('/raw get data.*?\[\].*?get data/si');
- $this->assertPattern('/Count: 1/');
- }
-
- function testJumpToUnnamedPageWithEmptyLinkReplacesJustThatFrame() {
- $this->get($this->samples() . 'messy_frameset.html');
- $this->clickLink('Empty link');
- $this->assertResponse(200);
- $this->assertPattern('/Simple test front controller/');
- $this->assertPattern('/raw get data.*?\[\].*?get data/si');
- $this->assertPattern('/Count: 1/');
- }
-
- function testJumpBackADirectoryLevelReplacesJustThatFrame() {
- $this->get($this->samples() . 'messy_frameset.html');
- $this->clickLink('Down one');
- $this->assertPattern('/index of .*\/test/i');
- $this->assertPattern('/Count: 1/');
- }
-
- function testSubmitToNamedPageReplacesJustThatFrame() {
- $this->get($this->samples() . 'messy_frameset.html');
- $this->assertPattern('/Simple test front controller/');
- $this->clickSubmit('Index');
- $this->assertResponse(200);
- $this->assertText('[action=Index]');
- $this->assertText('Count: 1');
- }
-
- function testSubmitToSameDirectoryReplacesJustThatFrame() {
- $this->get($this->samples() . 'messy_frameset.html');
- $this->clickSubmit('Same directory');
- $this->assertResponse(200);
- $this->assertText('[action=Same+directory]');
- $this->assertText('Count: 1');
- }
-
- function testSubmitToEmptyActionReplacesJustThatFrame() {
- $this->get($this->samples() . 'messy_frameset.html');
- $this->clickSubmit('Empty action');
- $this->assertResponse(200);
- $this->assertText('[action=Empty+action]');
- $this->assertText('Count: 1');
- }
-
- function testSubmitToNoActionReplacesJustThatFrame() {
- $this->get($this->samples() . 'messy_frameset.html');
- $this->clickSubmit('No action');
- $this->assertResponse(200);
- $this->assertText('[action=No+action]');
- $this->assertText('Count: 1');
- }
-
- function testSubmitBackADirectoryLevelReplacesJustThatFrame() {
- $this->get($this->samples() . 'messy_frameset.html');
- $this->clickSubmit('Down one');
- $this->assertPattern('/index of .*\/test/i');
- $this->assertPattern('/Count: 1/');
- }
-
- function testTopLinkExitsFrameset() {
- $this->get($this->samples() . 'messy_frameset.html');
- $this->clickLink('Exit the frameset');
- $this->assertTitle('Simple test target file');
- }
-
- function testLinkInOnePageCanLoadAnother() {
- $this->get($this->samples() . 'messy_frameset.html');
- $this->assertNoLink('3');
- $this->clickLink('Set one to 2');
- $this->assertLink('3');
- $this->assertNoLink('2');
- $this->assertTitle('Frameset for testing of SimpleTest');
- }
-
- function testFrameWithRelativeLinksRespectsBaseTagForThatPage() {
- $this->get($this->samples() . 'base_tag/frameset.html');
- $this->click('Back to test pages');
- $this->assertTitle('Frameset for testing of SimpleTest');
- $this->assertText('A target for the SimpleTest test suite');
- }
-
- function testRelativeLinkInFrameIsNotAffectedByFramesetBaseTag() {
- $this->get($this->samples() . 'base_tag/frameset_with_base_tag.html');
- $this->assertText('This is page 1');
- $this->click('To page 2');
- $this->assertTitle('Frameset for testing of SimpleTest');
- $this->assertText('This is page 2');
- }
-}
-
-class TestOfFrameAuthentication extends SimpleTestAcceptanceTest {
- function setUp() {
- $this->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- }
-
- function testUnauthenticatedFrameSendsChallenge() {
- $this->get($this->samples() . 'protected/');
- $this->setFrameFocus('Protected');
- $this->assertAuthentication('Basic');
- $this->assertRealm('SimpleTest basic authentication');
- $this->assertResponse(401);
- }
-
- function testCanReadFrameFromAlreadyAuthenticatedRealm() {
- $this->get($this->samples() . 'protected/');
- $this->authenticate('test', 'secret');
- $this->get($this->samples() . 'messy_frameset.html');
- $this->setFrameFocus('Protected');
- $this->assertResponse(200);
- $this->assertText('A target for the SimpleTest test suite');
- }
-
- function testCanAuthenticateFrame() {
- $this->get($this->samples() . 'messy_frameset.html');
- $this->setFrameFocus('Protected');
- $this->authenticate('test', 'secret');
- $this->assertResponse(200);
- $this->assertText('A target for the SimpleTest test suite');
- $this->clearFrameFocus();
- $this->assertText('Count: 1');
- }
-
- function testCanAuthenticateRedirectedFrame() {
- $this->get($this->samples() . 'messy_frameset.html');
- $this->setFrameFocus('Protected redirect');
- $this->assertResponse(401);
- $this->authenticate('test', 'secret');
- $this->assertResponse(200);
- $this->assertText('A target for the SimpleTest test suite');
- $this->clearFrameFocus();
- $this->assertText('Count: 1');
- }
-}
-
-class TestOfNestedFrames extends SimpleTestAcceptanceTest {
- function setUp() {
- $this->addHeader('User-Agent: SimpleTest ' . SimpleTest::getVersion());
- }
-
- function testCanNavigateToSpecificContent() {
- $this->get($this->samples() . 'nested_frameset.html');
- $this->assertTitle('Nested frameset for testing of SimpleTest');
-
- $this->assertPattern('/This is frame A/');
- $this->assertPattern('/This is frame B/');
- $this->assertPattern('/Simple test front controller/');
- $this->assertLink('2');
- $this->assertLink('Set one to 2');
- $this->assertPattern('/Count: 1/');
- $this->assertPattern('/r=rrr/');
-
- $this->setFrameFocus('pair');
- $this->assertPattern('/This is frame A/');
- $this->assertPattern('/This is frame B/');
- $this->assertNoPattern('/Simple test front controller/');
- $this->assertNoLink('2');
-
- $this->setFrameFocus('aaa');
- $this->assertPattern('/This is frame A/');
- $this->assertNoPattern('/This is frame B/');
-
- $this->clearFrameFocus();
- $this->assertResponse(200);
- $this->setFrameFocus('messy');
- $this->assertResponse(200);
- $this->setFrameFocus('Front controller');
- $this->assertResponse(200);
- $this->assertPattern('/Simple test front controller/');
- $this->assertNoLink('2');
- }
-
- function testReloadingFramesetPage() {
- $this->get($this->samples() . 'nested_frameset.html');
- $this->assertPattern('/Count: 1/');
- $this->retry();
- $this->assertPattern('/Count: 2/');
- $this->retry();
- $this->assertPattern('/Count: 3/');
- }
-
- function testRetryingNestedPageOnlyRetriesThatSet() {
- $this->get($this->samples() . 'nested_frameset.html');
- $this->assertPattern('/Count: 1/');
- $this->setFrameFocus('messy');
- $this->retry();
- $this->assertPattern('/Count: 2/');
- $this->setFrameFocus('Counter');
- $this->retry();
- $this->assertPattern('/Count: 3/');
-
- $this->clearFrameFocus();
- $this->setFrameFocus('messy');
- $this->setFrameFocus('Front controller');
- $this->retry();
-
- $this->clearFrameFocus();
- $this->assertPattern('/Count: 3/');
- }
-
- function testAuthenticatingNestedPage() {
- $this->get($this->samples() . 'nested_frameset.html');
- $this->setFrameFocus('messy');
- $this->setFrameFocus('Protected');
- $this->assertAuthentication('Basic');
- $this->assertRealm('SimpleTest basic authentication');
- $this->assertResponse(401);
-
- $this->authenticate('test', 'secret');
- $this->assertResponse(200);
- $this->assertPattern('/A target for the SimpleTest test suite/');
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/adapter_test.php b/3rdparty/simpletest/test/adapter_test.php
deleted file mode 100644
index c1a06a2f653..00000000000
--- a/3rdparty/simpletest/test/adapter_test.php
+++ /dev/null
@@ -1,50 +0,0 @@
-<?php
-// $Id: adapter_test.php 1748 2008-04-14 01:50:41Z lastcraft $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../extensions/pear_test_case.php');
-
-class SameTestClass {
-}
-
-class TestOfPearAdapter extends PHPUnit_TestCase {
-
- function testBoolean() {
- $this->assertTrue(true, "PEAR true");
- $this->assertFalse(false, "PEAR false");
- }
-
- function testName() {
- $this->assertTrue($this->getName() == get_class($this));
- }
-
- function testPass() {
- $this->pass("PEAR pass");
- }
-
- function testNulls() {
- $value = null;
- $this->assertNull($value, "PEAR null");
- $value = 0;
- $this->assertNotNull($value, "PEAR not null");
- }
-
- function testType() {
- $this->assertType("Hello", "string", "PEAR type");
- }
-
- function testEquals() {
- $this->assertEquals(12, 12, "PEAR identity");
- $this->setLooselyTyped(true);
- $this->assertEquals("12", 12, "PEAR equality");
- }
-
- function testSame() {
- $same = new SameTestClass();
- $this->assertSame($same, $same, "PEAR same");
- }
-
- function testRegExp() {
- $this->assertRegExp('/hello/', "A big hello from me", "PEAR regex");
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/all_tests.php b/3rdparty/simpletest/test/all_tests.php
deleted file mode 100644
index 99ce9451e32..00000000000
--- a/3rdparty/simpletest/test/all_tests.php
+++ /dev/null
@@ -1,13 +0,0 @@
-<?php
-require_once(dirname(__FILE__) . '/../autorun.php');
-
-class AllTests extends TestSuite {
- function AllTests() {
- $this->TestSuite('All tests for SimpleTest ' . SimpleTest::getVersion());
- $this->addFile(dirname(__FILE__) . '/unit_tests.php');
- $this->addFile(dirname(__FILE__) . '/shell_test.php');
- $this->addFile(dirname(__FILE__) . '/live_test.php');
- $this->addFile(dirname(__FILE__) . '/acceptance_test.php');
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/arguments_test.php b/3rdparty/simpletest/test/arguments_test.php
deleted file mode 100644
index 0cca4e99b24..00000000000
--- a/3rdparty/simpletest/test/arguments_test.php
+++ /dev/null
@@ -1,82 +0,0 @@
-<?php
-// $Id: cookies_test.php 1506 2007-05-07 00:58:03Z lastcraft $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../arguments.php');
-
-class TestOfCommandLineArgumentParsing extends UnitTestCase {
- function testArgumentListWithJustProgramNameGivesFalseToEveryName() {
- $arguments = new SimpleArguments(array('me'));
- $this->assertIdentical($arguments->a, false);
- $this->assertIdentical($arguments->all(), array());
- }
-
- function testSingleArgumentNameRecordedAsTrue() {
- $arguments = new SimpleArguments(array('me', '-a'));
- $this->assertIdentical($arguments->a, true);
- }
-
- function testSingleArgumentCanBeGivenAValue() {
- $arguments = new SimpleArguments(array('me', '-a=AAA'));
- $this->assertIdentical($arguments->a, 'AAA');
- }
-
- function testSingleArgumentCanBeGivenSpaceSeparatedValue() {
- $arguments = new SimpleArguments(array('me', '-a', 'AAA'));
- $this->assertIdentical($arguments->a, 'AAA');
- }
-
- function testWillBuildArrayFromRepeatedValue() {
- $arguments = new SimpleArguments(array('me', '-a', 'A', '-a', 'AA'));
- $this->assertIdentical($arguments->a, array('A', 'AA'));
- }
-
- function testWillBuildArrayFromMultiplyRepeatedValues() {
- $arguments = new SimpleArguments(array('me', '-a', 'A', '-a', 'AA', '-a', 'AAA'));
- $this->assertIdentical($arguments->a, array('A', 'AA', 'AAA'));
- }
-
- function testCanParseLongFormArguments() {
- $arguments = new SimpleArguments(array('me', '--aa=AA', '--bb', 'BB'));
- $this->assertIdentical($arguments->aa, 'AA');
- $this->assertIdentical($arguments->bb, 'BB');
- }
-
- function testGetsFullSetOfResultsAsHash() {
- $arguments = new SimpleArguments(array('me', '-a', '-b=1', '-b', '2', '--aa=AA', '--bb', 'BB', '-c'));
- $this->assertEqual($arguments->all(),
- array('a' => true, 'b' => array('1', '2'), 'aa' => 'AA', 'bb' => 'BB', 'c' => true));
- }
-}
-
-class TestOfHelpOutput extends UnitTestCase {
- function testDisplaysGeneralHelpBanner() {
- $help = new SimpleHelp('Cool program');
- $this->assertEqual($help->render(), "Cool program\n");
- }
-
- function testDisplaysOnlySingleLineEndings() {
- $help = new SimpleHelp("Cool program\n");
- $this->assertEqual($help->render(), "Cool program\n");
- }
-
- function testDisplaysHelpOnShortFlag() {
- $help = new SimpleHelp('Cool program');
- $help->explainFlag('a', 'Enables A');
- $this->assertEqual($help->render(), "Cool program\n-a Enables A\n");
- }
-
- function testHasAtleastFourSpacesAfterLongestFlag() {
- $help = new SimpleHelp('Cool program');
- $help->explainFlag('a', 'Enables A');
- $help->explainFlag('long', 'Enables Long');
- $this->assertEqual($help->render(),
- "Cool program\n-a Enables A\n--long Enables Long\n");
- }
-
- function testCanDisplaysMultipleFlagsForEachOption() {
- $help = new SimpleHelp('Cool program');
- $help->explainFlag(array('a', 'aa'), 'Enables A');
- $this->assertEqual($help->render(), "Cool program\n-a Enables A\n --aa\n");
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/authentication_test.php b/3rdparty/simpletest/test/authentication_test.php
deleted file mode 100644
index 081cccddfae..00000000000
--- a/3rdparty/simpletest/test/authentication_test.php
+++ /dev/null
@@ -1,145 +0,0 @@
-<?php
-// $Id: authentication_test.php 1748 2008-04-14 01:50:41Z lastcraft $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../authentication.php');
-require_once(dirname(__FILE__) . '/../http.php');
-Mock::generate('SimpleHttpRequest');
-
-class TestOfRealm extends UnitTestCase {
-
- function testWithinSameUrl() {
- $realm = new SimpleRealm(
- 'Basic',
- new SimpleUrl('http://www.here.com/path/hello.html'));
- $this->assertTrue($realm->isWithin(
- new SimpleUrl('http://www.here.com/path/hello.html')));
- }
-
- function testInsideWithLongerUrl() {
- $realm = new SimpleRealm(
- 'Basic',
- new SimpleUrl('http://www.here.com/path/'));
- $this->assertTrue($realm->isWithin(
- new SimpleUrl('http://www.here.com/path/hello.html')));
- }
-
- function testBelowRootIsOutside() {
- $realm = new SimpleRealm(
- 'Basic',
- new SimpleUrl('http://www.here.com/path/'));
- $this->assertTrue($realm->isWithin(
- new SimpleUrl('http://www.here.com/path/more/hello.html')));
- }
-
- function testOldNetscapeDefinitionIsOutside() {
- $realm = new SimpleRealm(
- 'Basic',
- new SimpleUrl('http://www.here.com/path/'));
- $this->assertFalse($realm->isWithin(
- new SimpleUrl('http://www.here.com/pathmore/hello.html')));
- }
-
- function testInsideWithMissingTrailingSlash() {
- $realm = new SimpleRealm(
- 'Basic',
- new SimpleUrl('http://www.here.com/path/'));
- $this->assertTrue($realm->isWithin(
- new SimpleUrl('http://www.here.com/path')));
- }
-
- function testDifferentPageNameStillInside() {
- $realm = new SimpleRealm(
- 'Basic',
- new SimpleUrl('http://www.here.com/path/hello.html'));
- $this->assertTrue($realm->isWithin(
- new SimpleUrl('http://www.here.com/path/goodbye.html')));
- }
-
- function testNewUrlInSameDirectoryDoesNotChangeRealm() {
- $realm = new SimpleRealm(
- 'Basic',
- new SimpleUrl('http://www.here.com/path/hello.html'));
- $realm->stretch(new SimpleUrl('http://www.here.com/path/goodbye.html'));
- $this->assertTrue($realm->isWithin(
- new SimpleUrl('http://www.here.com/path/index.html')));
- $this->assertFalse($realm->isWithin(
- new SimpleUrl('http://www.here.com/index.html')));
- }
-
- function testNewUrlMakesRealmTheCommonPath() {
- $realm = new SimpleRealm(
- 'Basic',
- new SimpleUrl('http://www.here.com/path/here/hello.html'));
- $realm->stretch(new SimpleUrl('http://www.here.com/path/there/goodbye.html'));
- $this->assertTrue($realm->isWithin(
- new SimpleUrl('http://www.here.com/path/here/index.html')));
- $this->assertTrue($realm->isWithin(
- new SimpleUrl('http://www.here.com/path/there/index.html')));
- $this->assertTrue($realm->isWithin(
- new SimpleUrl('http://www.here.com/path/index.html')));
- $this->assertFalse($realm->isWithin(
- new SimpleUrl('http://www.here.com/index.html')));
- $this->assertFalse($realm->isWithin(
- new SimpleUrl('http://www.here.com/paths/index.html')));
- $this->assertFalse($realm->isWithin(
- new SimpleUrl('http://www.here.com/pathindex.html')));
- }
-}
-
-class TestOfAuthenticator extends UnitTestCase {
-
- function testNoRealms() {
- $request = new MockSimpleHttpRequest();
- $request->expectNever('addHeaderLine');
- $authenticator = new SimpleAuthenticator();
- $authenticator->addHeaders($request, new SimpleUrl('http://here.com/'));
- }
-
- function &createSingleRealm() {
- $authenticator = new SimpleAuthenticator();
- $authenticator->addRealm(
- new SimpleUrl('http://www.here.com/path/hello.html'),
- 'Basic',
- 'Sanctuary');
- $authenticator->setIdentityForRealm('www.here.com', 'Sanctuary', 'test', 'secret');
- return $authenticator;
- }
-
- function testOutsideRealm() {
- $request = new MockSimpleHttpRequest();
- $request->expectNever('addHeaderLine');
- $authenticator = &$this->createSingleRealm();
- $authenticator->addHeaders(
- $request,
- new SimpleUrl('http://www.here.com/hello.html'));
- }
-
- function testWithinRealm() {
- $request = new MockSimpleHttpRequest();
- $request->expectOnce('addHeaderLine');
- $authenticator = &$this->createSingleRealm();
- $authenticator->addHeaders(
- $request,
- new SimpleUrl('http://www.here.com/path/more/hello.html'));
- }
-
- function testRestartingClearsRealm() {
- $request = new MockSimpleHttpRequest();
- $request->expectNever('addHeaderLine');
- $authenticator = &$this->createSingleRealm();
- $authenticator->restartSession();
- $authenticator->addHeaders(
- $request,
- new SimpleUrl('http://www.here.com/hello.html'));
- }
-
- function testDifferentHostIsOutsideRealm() {
- $request = new MockSimpleHttpRequest();
- $request->expectNever('addHeaderLine');
- $authenticator = &$this->createSingleRealm();
- $authenticator->addHeaders(
- $request,
- new SimpleUrl('http://here.com/path/hello.html'));
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/autorun_test.php b/3rdparty/simpletest/test/autorun_test.php
deleted file mode 100644
index d85ea19897c..00000000000
--- a/3rdparty/simpletest/test/autorun_test.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/support/test1.php');
-
-class TestOfAutorun extends UnitTestCase {
- function testLoadIfIncluded() {
- $tests = new TestSuite();
- $tests->addFile(dirname(__FILE__) . '/support/test1.php');
- $this->assertEqual($tests->getSize(), 1);
- }
-
- function testExitStatusOneIfTestsFail() {
- exec('php ' . dirname(__FILE__) . '/support/failing_test.php', $output, $exit_status);
- $this->assertEqual($exit_status, 1);
- }
-
- function testExitStatusZeroIfTestsPass() {
- exec('php ' . dirname(__FILE__) . '/support/passing_test.php', $output, $exit_status);
- $this->assertEqual($exit_status, 0);
- }
-}
-
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/bad_test_suite.php b/3rdparty/simpletest/test/bad_test_suite.php
deleted file mode 100644
index b426013be40..00000000000
--- a/3rdparty/simpletest/test/bad_test_suite.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-require_once(dirname(__FILE__) . '/../autorun.php');
-
-class BadTestCases extends TestSuite {
- function BadTestCases() {
- $this->TestSuite('Two bad test cases');
- $this->addFile(dirname(__FILE__) . '/support/empty_test_file.php');
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/browser_test.php b/3rdparty/simpletest/test/browser_test.php
deleted file mode 100644
index 3a52aaa8ff4..00000000000
--- a/3rdparty/simpletest/test/browser_test.php
+++ /dev/null
@@ -1,802 +0,0 @@
-<?php
-// $Id: browser_test.php 1964 2009-10-13 15:27:31Z maetl_ $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../browser.php');
-require_once(dirname(__FILE__) . '/../user_agent.php');
-require_once(dirname(__FILE__) . '/../http.php');
-require_once(dirname(__FILE__) . '/../page.php');
-require_once(dirname(__FILE__) . '/../encoding.php');
-
-Mock::generate('SimpleHttpResponse');
-Mock::generate('SimplePage');
-Mock::generate('SimpleForm');
-Mock::generate('SimpleUserAgent');
-Mock::generatePartial(
- 'SimpleBrowser',
- 'MockParseSimpleBrowser',
- array('createUserAgent', 'parse'));
-Mock::generatePartial(
- 'SimpleBrowser',
- 'MockUserAgentSimpleBrowser',
- array('createUserAgent'));
-
-class TestOfHistory extends UnitTestCase {
-
- function testEmptyHistoryHasFalseContents() {
- $history = new SimpleBrowserHistory();
- $this->assertIdentical($history->getUrl(), false);
- $this->assertIdentical($history->getParameters(), false);
- }
-
- function testCannotMoveInEmptyHistory() {
- $history = new SimpleBrowserHistory();
- $this->assertFalse($history->back());
- $this->assertFalse($history->forward());
- }
-
- function testCurrentTargetAccessors() {
- $history = new SimpleBrowserHistory();
- $history->recordEntry(
- new SimpleUrl('http://www.here.com/'),
- new SimpleGetEncoding());
- $this->assertIdentical($history->getUrl(), new SimpleUrl('http://www.here.com/'));
- $this->assertIdentical($history->getParameters(), new SimpleGetEncoding());
- }
-
- function testSecondEntryAccessors() {
- $history = new SimpleBrowserHistory();
- $history->recordEntry(
- new SimpleUrl('http://www.first.com/'),
- new SimpleGetEncoding());
- $history->recordEntry(
- new SimpleUrl('http://www.second.com/'),
- new SimplePostEncoding(array('a' => 1)));
- $this->assertIdentical($history->getUrl(), new SimpleUrl('http://www.second.com/'));
- $this->assertIdentical(
- $history->getParameters(),
- new SimplePostEncoding(array('a' => 1)));
- }
-
- function testGoingBackwards() {
- $history = new SimpleBrowserHistory();
- $history->recordEntry(
- new SimpleUrl('http://www.first.com/'),
- new SimpleGetEncoding());
- $history->recordEntry(
- new SimpleUrl('http://www.second.com/'),
- new SimplePostEncoding(array('a' => 1)));
- $this->assertTrue($history->back());
- $this->assertIdentical($history->getUrl(), new SimpleUrl('http://www.first.com/'));
- $this->assertIdentical($history->getParameters(), new SimpleGetEncoding());
- }
-
- function testGoingBackwardsOffBeginning() {
- $history = new SimpleBrowserHistory();
- $history->recordEntry(
- new SimpleUrl('http://www.first.com/'),
- new SimpleGetEncoding());
- $this->assertFalse($history->back());
- $this->assertIdentical($history->getUrl(), new SimpleUrl('http://www.first.com/'));
- $this->assertIdentical($history->getParameters(), new SimpleGetEncoding());
- }
-
- function testGoingForwardsOffEnd() {
- $history = new SimpleBrowserHistory();
- $history->recordEntry(
- new SimpleUrl('http://www.first.com/'),
- new SimpleGetEncoding());
- $this->assertFalse($history->forward());
- $this->assertIdentical($history->getUrl(), new SimpleUrl('http://www.first.com/'));
- $this->assertIdentical($history->getParameters(), new SimpleGetEncoding());
- }
-
- function testGoingBackwardsAndForwards() {
- $history = new SimpleBrowserHistory();
- $history->recordEntry(
- new SimpleUrl('http://www.first.com/'),
- new SimpleGetEncoding());
- $history->recordEntry(
- new SimpleUrl('http://www.second.com/'),
- new SimplePostEncoding(array('a' => 1)));
- $this->assertTrue($history->back());
- $this->assertTrue($history->forward());
- $this->assertIdentical($history->getUrl(), new SimpleUrl('http://www.second.com/'));
- $this->assertIdentical(
- $history->getParameters(),
- new SimplePostEncoding(array('a' => 1)));
- }
-
- function testNewEntryReplacesNextOne() {
- $history = new SimpleBrowserHistory();
- $history->recordEntry(
- new SimpleUrl('http://www.first.com/'),
- new SimpleGetEncoding());
- $history->recordEntry(
- new SimpleUrl('http://www.second.com/'),
- new SimplePostEncoding(array('a' => 1)));
- $history->back();
- $history->recordEntry(
- new SimpleUrl('http://www.third.com/'),
- new SimpleGetEncoding());
- $this->assertIdentical($history->getUrl(), new SimpleUrl('http://www.third.com/'));
- $this->assertIdentical($history->getParameters(), new SimpleGetEncoding());
- }
-
- function testNewEntryDropsFutureEntries() {
- $history = new SimpleBrowserHistory();
- $history->recordEntry(
- new SimpleUrl('http://www.first.com/'),
- new SimpleGetEncoding());
- $history->recordEntry(
- new SimpleUrl('http://www.second.com/'),
- new SimpleGetEncoding());
- $history->recordEntry(
- new SimpleUrl('http://www.third.com/'),
- new SimpleGetEncoding());
- $history->back();
- $history->back();
- $history->recordEntry(
- new SimpleUrl('http://www.fourth.com/'),
- new SimpleGetEncoding());
- $this->assertIdentical($history->getUrl(), new SimpleUrl('http://www.fourth.com/'));
- $this->assertFalse($history->forward());
- $history->back();
- $this->assertIdentical($history->getUrl(), new SimpleUrl('http://www.first.com/'));
- $this->assertFalse($history->back());
- }
-}
-
-class TestOfParsedPageAccess extends UnitTestCase {
-
- function loadPage(&$page) {
- $response = new MockSimpleHttpResponse($this);
- $agent = new MockSimpleUserAgent($this);
- $agent->returns('fetchResponse', $response);
-
- $browser = new MockParseSimpleBrowser($this);
- $browser->returns('createUserAgent', $agent);
- $browser->returns('parse', $page);
- $browser->__construct();
-
- $browser->get('http://this.com/page.html');
- return $browser;
- }
-
- function testAccessorsWhenNoPage() {
- $agent = new MockSimpleUserAgent($this);
- $browser = new MockParseSimpleBrowser($this);
- $browser->returns('createUserAgent', $agent);
- $browser->__construct();
- $this->assertEqual($browser->getContent(), '');
- }
-
- function testParse() {
- $page = new MockSimplePage();
- $page->setReturnValue('getRequest', "GET here.html\r\n\r\n");
- $page->setReturnValue('getRaw', 'Raw HTML');
- $page->setReturnValue('getTitle', 'Here');
- $page->setReturnValue('getFrameFocus', 'Frame');
- $page->setReturnValue('getMimeType', 'text/html');
- $page->setReturnValue('getResponseCode', 200);
- $page->setReturnValue('getAuthentication', 'Basic');
- $page->setReturnValue('getRealm', 'Somewhere');
- $page->setReturnValue('getTransportError', 'Ouch!');
-
- $browser = $this->loadPage($page);
- $this->assertEqual($browser->getRequest(), "GET here.html\r\n\r\n");
- $this->assertEqual($browser->getContent(), 'Raw HTML');
- $this->assertEqual($browser->getTitle(), 'Here');
- $this->assertEqual($browser->getFrameFocus(), 'Frame');
- $this->assertIdentical($browser->getResponseCode(), 200);
- $this->assertEqual($browser->getMimeType(), 'text/html');
- $this->assertEqual($browser->getAuthentication(), 'Basic');
- $this->assertEqual($browser->getRealm(), 'Somewhere');
- $this->assertEqual($browser->getTransportError(), 'Ouch!');
- }
-
- function testLinkAffirmationWhenPresent() {
- $page = new MockSimplePage();
- $page->setReturnValue('getUrlsByLabel', array('http://www.nowhere.com'));
- $page->expectOnce('getUrlsByLabel', array('a link label'));
- $browser = $this->loadPage($page);
- $this->assertIdentical($browser->getLink('a link label'), 'http://www.nowhere.com');
- }
-
- function testLinkAffirmationByIdWhenPresent() {
- $page = new MockSimplePage();
- $page->setReturnValue('getUrlById', 'a_page.com', array(99));
- $page->setReturnValue('getUrlById', false, array('*'));
- $browser = $this->loadPage($page);
- $this->assertIdentical($browser->getLinkById(99), 'a_page.com');
- $this->assertFalse($browser->getLinkById(98));
- }
-
- function testSettingFieldIsPassedToPage() {
- $page = new MockSimplePage();
- $page->expectOnce('setField', array(new SimpleByLabelOrName('key'), 'Value', false));
- $page->setReturnValue('getField', 'Value');
- $browser = $this->loadPage($page);
- $this->assertEqual($browser->getField('key'), 'Value');
- $browser->setField('key', 'Value');
- }
-}
-
-class TestOfBrowserNavigation extends UnitTestCase {
- function createBrowser($agent, $page) {
- $browser = new MockParseSimpleBrowser();
- $browser->returns('createUserAgent', $agent);
- $browser->returns('parse', $page);
- $browser->__construct();
- return $browser;
- }
-
- function testBrowserRequestMethods() {
- $agent = new MockSimpleUserAgent();
- $agent->returns('fetchResponse', new MockSimpleHttpResponse());
- $agent->expectAt(
- 0,
- 'fetchResponse',
- array(new SimpleUrl('http://this.com/get.req'), new SimpleGetEncoding()));
- $agent->expectAt(
- 1,
- 'fetchResponse',
- array(new SimpleUrl('http://this.com/post.req'), new SimplePostEncoding()));
- $agent->expectAt(
- 2,
- 'fetchResponse',
- array(new SimpleUrl('http://this.com/put.req'), new SimplePutEncoding()));
- $agent->expectAt(
- 3,
- 'fetchResponse',
- array(new SimpleUrl('http://this.com/delete.req'), new SimpleDeleteEncoding()));
- $agent->expectAt(
- 4,
- 'fetchResponse',
- array(new SimpleUrl('http://this.com/head.req'), new SimpleHeadEncoding()));
- $agent->expectCallCount('fetchResponse', 5);
-
- $page = new MockSimplePage();
-
- $browser = $this->createBrowser($agent, $page);
- $browser->get('http://this.com/get.req');
- $browser->post('http://this.com/post.req');
- $browser->put('http://this.com/put.req');
- $browser->delete('http://this.com/delete.req');
- $browser->head('http://this.com/head.req');
- }
-
- function testClickLinkRequestsPage() {
- $agent = new MockSimpleUserAgent();
- $agent->returns('fetchResponse', new MockSimpleHttpResponse());
- $agent->expectAt(
- 0,
- 'fetchResponse',
- array(new SimpleUrl('http://this.com/page.html'), new SimpleGetEncoding()));
- $agent->expectAt(
- 1,
- 'fetchResponse',
- array(new SimpleUrl('http://this.com/new.html'), new SimpleGetEncoding()));
- $agent->expectCallCount('fetchResponse', 2);
-
- $page = new MockSimplePage();
- $page->setReturnValue('getUrlsByLabel', array(new SimpleUrl('http://this.com/new.html')));
- $page->expectOnce('getUrlsByLabel', array('New'));
- $page->setReturnValue('getRaw', 'A page');
-
- $browser = $this->createBrowser($agent, $page);
- $browser->get('http://this.com/page.html');
- $this->assertTrue($browser->clickLink('New'));
- }
-
- function testClickLinkWithUnknownFrameStillRequestsWholePage() {
- $agent = new MockSimpleUserAgent();
- $agent->returns('fetchResponse', new MockSimpleHttpResponse());
- $agent->expectAt(
- 0,
- 'fetchResponse',
- array(new SimpleUrl('http://this.com/page.html'), new SimpleGetEncoding()));
- $target = new SimpleUrl('http://this.com/new.html');
- $target->setTarget('missing');
- $agent->expectAt(
- 1,
- 'fetchResponse',
- array($target, new SimpleGetEncoding()));
- $agent->expectCallCount('fetchResponse', 2);
-
- $parsed_url = new SimpleUrl('http://this.com/new.html');
- $parsed_url->setTarget('missing');
-
- $page = new MockSimplePage();
- $page->setReturnValue('getUrlsByLabel', array($parsed_url));
- $page->setReturnValue('hasFrames', false);
- $page->expectOnce('getUrlsByLabel', array('New'));
- $page->setReturnValue('getRaw', 'A page');
-
- $browser = $this->createBrowser($agent, $page);
- $browser->get('http://this.com/page.html');
- $this->assertTrue($browser->clickLink('New'));
- }
-
- function testClickingMissingLinkFails() {
- $agent = new MockSimpleUserAgent($this);
- $agent->returns('fetchResponse', new MockSimpleHttpResponse());
-
- $page = new MockSimplePage();
- $page->setReturnValue('getUrlsByLabel', array());
- $page->setReturnValue('getRaw', 'stuff');
-
- $browser = $this->createBrowser($agent, $page);
- $this->assertTrue($browser->get('http://this.com/page.html'));
- $this->assertFalse($browser->clickLink('New'));
- }
-
- function testClickIndexedLink() {
- $agent = new MockSimpleUserAgent();
- $agent->returns('fetchResponse', new MockSimpleHttpResponse());
- $agent->expectAt(
- 1,
- 'fetchResponse',
- array(new SimpleUrl('1.html'), new SimpleGetEncoding()));
- $agent->expectCallCount('fetchResponse', 2);
-
- $page = new MockSimplePage();
- $page->setReturnValue(
- 'getUrlsByLabel',
- array(new SimpleUrl('0.html'), new SimpleUrl('1.html')));
- $page->setReturnValue('getRaw', 'A page');
-
- $browser = $this->createBrowser($agent, $page);
- $browser->get('http://this.com/page.html');
- $this->assertTrue($browser->clickLink('New', 1));
- }
-
- function testClinkLinkById() {
- $agent = new MockSimpleUserAgent();
- $agent->returns('fetchResponse', new MockSimpleHttpResponse());
- $agent->expectAt(1, 'fetchResponse', array(
- new SimpleUrl('http://this.com/link.html'),
- new SimpleGetEncoding()));
- $agent->expectCallCount('fetchResponse', 2);
-
- $page = new MockSimplePage();
- $page->setReturnValue('getUrlById', new SimpleUrl('http://this.com/link.html'));
- $page->expectOnce('getUrlById', array(2));
- $page->setReturnValue('getRaw', 'A page');
-
- $browser = $this->createBrowser($agent, $page);
- $browser->get('http://this.com/page.html');
- $this->assertTrue($browser->clickLinkById(2));
- }
-
- function testClickingMissingLinkIdFails() {
- $agent = new MockSimpleUserAgent();
- $agent->returns('fetchResponse', new MockSimpleHttpResponse());
-
- $page = new MockSimplePage();
- $page->setReturnValue('getUrlById', false);
-
- $browser = $this->createBrowser($agent, $page);
- $browser->get('http://this.com/page.html');
- $this->assertFalse($browser->clickLink(0));
- }
-
- function testSubmitFormByLabel() {
- $agent = new MockSimpleUserAgent();
- $agent->returns('fetchResponse', new MockSimpleHttpResponse());
- $agent->expectAt(1, 'fetchResponse', array(
- new SimpleUrl('http://this.com/handler.html'),
- new SimplePostEncoding(array('a' => 'A'))));
- $agent->expectCallCount('fetchResponse', 2);
-
- $form = new MockSimpleForm();
- $form->setReturnValue('getAction', new SimpleUrl('http://this.com/handler.html'));
- $form->setReturnValue('getMethod', 'post');
- $form->setReturnValue('submitButton', new SimplePostEncoding(array('a' => 'A')));
- $form->expectOnce('submitButton', array(new SimpleByLabel('Go'), false));
-
- $page = new MockSimplePage();
- $page->returns('getFormBySubmit', $form);
- $page->expectOnce('getFormBySubmit', array(new SimpleByLabel('Go')));
- $page->setReturnValue('getRaw', 'stuff');
-
- $browser = $this->createBrowser($agent, $page);
- $browser->get('http://this.com/page.html');
- $this->assertTrue($browser->clickSubmit('Go'));
- }
-
- function testDefaultSubmitFormByLabel() {
- $agent = new MockSimpleUserAgent();
- $agent->returns('fetchResponse', new MockSimpleHttpResponse());
- $agent->expectAt(1, 'fetchResponse', array(
- new SimpleUrl('http://this.com/page.html'),
- new SimpleGetEncoding(array('a' => 'A'))));
- $agent->expectCallCount('fetchResponse', 2);
-
- $form = new MockSimpleForm();
- $form->setReturnValue('getAction', new SimpleUrl('http://this.com/page.html'));
- $form->setReturnValue('getMethod', 'get');
- $form->setReturnValue('submitButton', new SimpleGetEncoding(array('a' => 'A')));
-
- $page = new MockSimplePage();
- $page->returns('getFormBySubmit', $form);
- $page->expectOnce('getFormBySubmit', array(new SimpleByLabel('Submit')));
- $page->setReturnValue('getRaw', 'stuff');
- $page->setReturnValue('getUrl', new SimpleUrl('http://this.com/page.html'));
-
- $browser = $this->createBrowser($agent, $page);
- $browser->get('http://this.com/page.html');
- $this->assertTrue($browser->clickSubmit());
- }
-
- function testSubmitFormByName() {
- $agent = new MockSimpleUserAgent();
- $agent->returns('fetchResponse', new MockSimpleHttpResponse());
-
- $form = new MockSimpleForm();
- $form->setReturnValue('getAction', new SimpleUrl('http://this.com/handler.html'));
- $form->setReturnValue('getMethod', 'post');
- $form->setReturnValue('submitButton', new SimplePostEncoding(array('a' => 'A')));
-
- $page = new MockSimplePage();
- $page->returns('getFormBySubmit', $form);
- $page->expectOnce('getFormBySubmit', array(new SimpleByName('me')));
- $page->setReturnValue('getRaw', 'stuff');
-
- $browser = $this->createBrowser($agent, $page);
- $browser->get('http://this.com/page.html');
- $this->assertTrue($browser->clickSubmitByName('me'));
- }
-
- function testSubmitFormById() {
- $agent = new MockSimpleUserAgent();
- $agent->returns('fetchResponse', new MockSimpleHttpResponse());
-
- $form = new MockSimpleForm();
- $form->setReturnValue('getAction', new SimpleUrl('http://this.com/handler.html'));
- $form->setReturnValue('getMethod', 'post');
- $form->setReturnValue('submitButton', new SimplePostEncoding(array('a' => 'A')));
- $form->expectOnce('submitButton', array(new SimpleById(99), false));
-
- $page = new MockSimplePage();
- $page->returns('getFormBySubmit', $form);
- $page->expectOnce('getFormBySubmit', array(new SimpleById(99)));
- $page->setReturnValue('getRaw', 'stuff');
-
- $browser = $this->createBrowser($agent, $page);
- $browser->get('http://this.com/page.html');
- $this->assertTrue($browser->clickSubmitById(99));
- }
-
- function testSubmitFormByImageLabel() {
- $agent = new MockSimpleUserAgent();
- $agent->returns('fetchResponse', new MockSimpleHttpResponse());
-
- $form = new MockSimpleForm();
- $form->setReturnValue('getAction', new SimpleUrl('http://this.com/handler.html'));
- $form->setReturnValue('getMethod', 'post');
- $form->setReturnValue('submitImage', new SimplePostEncoding(array('a' => 'A')));
- $form->expectOnce('submitImage', array(new SimpleByLabel('Go!'), 10, 11, false));
-
- $page = new MockSimplePage();
- $page->returns('getFormByImage', $form);
- $page->expectOnce('getFormByImage', array(new SimpleByLabel('Go!')));
- $page->setReturnValue('getRaw', 'stuff');
-
- $browser = $this->createBrowser($agent, $page);
- $browser->get('http://this.com/page.html');
- $this->assertTrue($browser->clickImage('Go!', 10, 11));
- }
-
- function testSubmitFormByImageName() {
- $agent = new MockSimpleUserAgent();
- $agent->returns('fetchResponse', new MockSimpleHttpResponse());
-
- $form = new MockSimpleForm();
- $form->setReturnValue('getAction', new SimpleUrl('http://this.com/handler.html'));
- $form->setReturnValue('getMethod', 'post');
- $form->setReturnValue('submitImage', new SimplePostEncoding(array('a' => 'A')));
- $form->expectOnce('submitImage', array(new SimpleByName('a'), 10, 11, false));
-
- $page = new MockSimplePage();
- $page->returns('getFormByImage', $form);
- $page->expectOnce('getFormByImage', array(new SimpleByName('a')));
- $page->setReturnValue('getRaw', 'stuff');
-
- $browser = $this->createBrowser($agent, $page);
- $browser->get('http://this.com/page.html');
- $this->assertTrue($browser->clickImageByName('a', 10, 11));
- }
-
- function testSubmitFormByImageId() {
- $agent = new MockSimpleUserAgent();
- $agent->returns('fetchResponse', new MockSimpleHttpResponse());
-
- $form = new MockSimpleForm();
- $form->setReturnValue('getAction', new SimpleUrl('http://this.com/handler.html'));
- $form->setReturnValue('getMethod', 'post');
- $form->setReturnValue('submitImage', new SimplePostEncoding(array('a' => 'A')));
- $form->expectOnce('submitImage', array(new SimpleById(99), 10, 11, false));
-
- $page = new MockSimplePage();
- $page->returns('getFormByImage', $form);
- $page->expectOnce('getFormByImage', array(new SimpleById(99)));
- $page->setReturnValue('getRaw', 'stuff');
-
- $browser = $this->createBrowser($agent, $page);
- $browser->get('http://this.com/page.html');
- $this->assertTrue($browser->clickImageById(99, 10, 11));
- }
-
- function testSubmitFormByFormId() {
- $agent = new MockSimpleUserAgent();
- $agent->returns('fetchResponse', new MockSimpleHttpResponse());
- $agent->expectAt(1, 'fetchResponse', array(
- new SimpleUrl('http://this.com/handler.html'),
- new SimplePostEncoding(array('a' => 'A'))));
- $agent->expectCallCount('fetchResponse', 2);
-
- $form = new MockSimpleForm();
- $form->setReturnValue('getAction', new SimpleUrl('http://this.com/handler.html'));
- $form->setReturnValue('getMethod', 'post');
- $form->setReturnValue('submit', new SimplePostEncoding(array('a' => 'A')));
-
- $page = new MockSimplePage();
- $page->returns('getFormById', $form);
- $page->expectOnce('getFormById', array(33));
- $page->setReturnValue('getRaw', 'stuff');
-
- $browser = $this->createBrowser($agent, $page);
- $browser->get('http://this.com/page.html');
- $this->assertTrue($browser->submitFormById(33));
- }
-}
-
-class TestOfBrowserFrames extends UnitTestCase {
-
- function createBrowser($agent) {
- $browser = new MockUserAgentSimpleBrowser();
- $browser->returns('createUserAgent', $agent);
- $browser->__construct();
- return $browser;
- }
-
- function createUserAgent($pages) {
- $agent = new MockSimpleUserAgent();
- foreach ($pages as $url => $raw) {
- $url = new SimpleUrl($url);
- $response = new MockSimpleHttpResponse();
- $response->setReturnValue('getUrl', $url);
- $response->setReturnValue('getContent', $raw);
- $agent->returns('fetchResponse', $response, array($url, '*'));
- }
- return $agent;
- }
-
- function testSimplePageHasNoFrames() {
- $browser = $this->createBrowser($this->createUserAgent(
- array('http://site.with.no.frames/' => 'A non-framed page')));
- $this->assertEqual(
- $browser->get('http://site.with.no.frames/'),
- 'A non-framed page');
- $this->assertIdentical($browser->getFrames(), 'http://site.with.no.frames/');
- }
-
- function testFramesetWithSingleFrame() {
- $frameset = '<frameset><frame name="a" src="frame.html"></frameset>';
- $browser = $this->createBrowser($this->createUserAgent(array(
- 'http://site.with.one.frame/' => $frameset,
- 'http://site.with.one.frame/frame.html' => 'A frame')));
- $this->assertEqual($browser->get('http://site.with.one.frame/'), 'A frame');
- $this->assertIdentical(
- $browser->getFrames(),
- array('a' => 'http://site.with.one.frame/frame.html'));
- }
-
- function testTitleTakenFromFramesetPage() {
- $frameset = '<title>Frameset title</title>' .
- '<frameset><frame name="a" src="frame.html"></frameset>';
- $browser = $this->createBrowser($this->createUserAgent(array(
- 'http://site.with.one.frame/' => $frameset,
- 'http://site.with.one.frame/frame.html' => '<title>Page title</title>')));
- $browser->get('http://site.with.one.frame/');
- $this->assertEqual($browser->getTitle(), 'Frameset title');
- }
-
- function testFramesetWithSingleUnnamedFrame() {
- $frameset = '<frameset><frame src="frame.html"></frameset>';
- $browser = $this->createBrowser($this->createUserAgent(array(
- 'http://site.with.one.frame/' => $frameset,
- 'http://site.with.one.frame/frame.html' => 'One frame')));
- $this->assertEqual(
- $browser->get('http://site.with.one.frame/'),
- 'One frame');
- $this->assertIdentical(
- $browser->getFrames(),
- array(1 => 'http://site.with.one.frame/frame.html'));
- }
-
- function testFramesetWithMultipleFrames() {
- $frameset = '<frameset>' .
- '<frame name="a" src="frame_a.html">' .
- '<frame name="b" src="frame_b.html">' .
- '<frame name="c" src="frame_c.html">' .
- '</frameset>';
- $browser = $this->createBrowser($this->createUserAgent(array(
- 'http://site.with.frames/' => $frameset,
- 'http://site.with.frames/frame_a.html' => 'A frame',
- 'http://site.with.frames/frame_b.html' => 'B frame',
- 'http://site.with.frames/frame_c.html' => 'C frame')));
- $this->assertEqual(
- $browser->get('http://site.with.frames/'),
- 'A frameB frameC frame');
- $this->assertIdentical($browser->getFrames(), array(
- 'a' => 'http://site.with.frames/frame_a.html',
- 'b' => 'http://site.with.frames/frame_b.html',
- 'c' => 'http://site.with.frames/frame_c.html'));
- }
-
- function testFrameFocusByName() {
- $frameset = '<frameset>' .
- '<frame name="a" src="frame_a.html">' .
- '<frame name="b" src="frame_b.html">' .
- '<frame name="c" src="frame_c.html">' .
- '</frameset>';
- $browser = $this->createBrowser($this->createUserAgent(array(
- 'http://site.with.frames/' => $frameset,
- 'http://site.with.frames/frame_a.html' => 'A frame',
- 'http://site.with.frames/frame_b.html' => 'B frame',
- 'http://site.with.frames/frame_c.html' => 'C frame')));
- $browser->get('http://site.with.frames/');
- $browser->setFrameFocus('a');
- $this->assertEqual($browser->getContent(), 'A frame');
- $browser->setFrameFocus('b');
- $this->assertEqual($browser->getContent(), 'B frame');
- $browser->setFrameFocus('c');
- $this->assertEqual($browser->getContent(), 'C frame');
- }
-
- function testFramesetWithSomeNamedFrames() {
- $frameset = '<frameset>' .
- '<frame name="a" src="frame_a.html">' .
- '<frame src="frame_b.html">' .
- '<frame name="c" src="frame_c.html">' .
- '<frame src="frame_d.html">' .
- '</frameset>';
- $browser = $this->createBrowser($this->createUserAgent(array(
- 'http://site.with.frames/' => $frameset,
- 'http://site.with.frames/frame_a.html' => 'A frame',
- 'http://site.with.frames/frame_b.html' => 'B frame',
- 'http://site.with.frames/frame_c.html' => 'C frame',
- 'http://site.with.frames/frame_d.html' => 'D frame')));
- $this->assertEqual(
- $browser->get('http://site.with.frames/'),
- 'A frameB frameC frameD frame');
- $this->assertIdentical($browser->getFrames(), array(
- 'a' => 'http://site.with.frames/frame_a.html',
- 2 => 'http://site.with.frames/frame_b.html',
- 'c' => 'http://site.with.frames/frame_c.html',
- 4 => 'http://site.with.frames/frame_d.html'));
- }
-
- function testFrameFocusWithMixedNamesAndIndexes() {
- $frameset = '<frameset>' .
- '<frame name="a" src="frame_a.html">' .
- '<frame src="frame_b.html">' .
- '<frame name="c" src="frame_c.html">' .
- '<frame src="frame_d.html">' .
- '</frameset>';
- $browser = $this->createBrowser($this->createUserAgent(array(
- 'http://site.with.frames/' => $frameset,
- 'http://site.with.frames/frame_a.html' => 'A frame',
- 'http://site.with.frames/frame_b.html' => 'B frame',
- 'http://site.with.frames/frame_c.html' => 'C frame',
- 'http://site.with.frames/frame_d.html' => 'D frame')));
- $browser->get('http://site.with.frames/');
- $browser->setFrameFocus('a');
- $this->assertEqual($browser->getContent(), 'A frame');
- $browser->setFrameFocus(2);
- $this->assertEqual($browser->getContent(), 'B frame');
- $browser->setFrameFocus('c');
- $this->assertEqual($browser->getContent(), 'C frame');
- $browser->setFrameFocus(4);
- $this->assertEqual($browser->getContent(), 'D frame');
- $browser->clearFrameFocus();
- $this->assertEqual($browser->getContent(), 'A frameB frameC frameD frame');
- }
-
- function testNestedFrameset() {
- $inner = '<frameset>' .
- '<frame name="page" src="page.html">' .
- '</frameset>';
- $outer = '<frameset>' .
- '<frame name="inner" src="inner.html">' .
- '</frameset>';
- $browser = $this->createBrowser($this->createUserAgent(array(
- 'http://site.with.nested.frame/' => $outer,
- 'http://site.with.nested.frame/inner.html' => $inner,
- 'http://site.with.nested.frame/page.html' => 'The page')));
- $this->assertEqual(
- $browser->get('http://site.with.nested.frame/'),
- 'The page');
- $this->assertIdentical($browser->getFrames(), array(
- 'inner' => array(
- 'page' => 'http://site.with.nested.frame/page.html')));
- }
-
- function testCanNavigateToNestedFrame() {
- $inner = '<frameset>' .
- '<frame name="one" src="one.html">' .
- '<frame name="two" src="two.html">' .
- '</frameset>';
- $outer = '<frameset>' .
- '<frame name="inner" src="inner.html">' .
- '<frame name="three" src="three.html">' .
- '</frameset>';
- $browser = $this->createBrowser($this->createUserAgent(array(
- 'http://site.with.nested.frames/' => $outer,
- 'http://site.with.nested.frames/inner.html' => $inner,
- 'http://site.with.nested.frames/one.html' => 'Page one',
- 'http://site.with.nested.frames/two.html' => 'Page two',
- 'http://site.with.nested.frames/three.html' => 'Page three')));
-
- $browser->get('http://site.with.nested.frames/');
- $this->assertEqual($browser->getContent(), 'Page onePage twoPage three');
-
- $this->assertTrue($browser->setFrameFocus('inner'));
- $this->assertEqual($browser->getFrameFocus(), array('inner'));
- $this->assertTrue($browser->setFrameFocus('one'));
- $this->assertEqual($browser->getFrameFocus(), array('inner', 'one'));
- $this->assertEqual($browser->getContent(), 'Page one');
-
- $this->assertTrue($browser->setFrameFocus('two'));
- $this->assertEqual($browser->getFrameFocus(), array('inner', 'two'));
- $this->assertEqual($browser->getContent(), 'Page two');
-
- $browser->clearFrameFocus();
- $this->assertTrue($browser->setFrameFocus('three'));
- $this->assertEqual($browser->getFrameFocus(), array('three'));
- $this->assertEqual($browser->getContent(), 'Page three');
-
- $this->assertTrue($browser->setFrameFocus('inner'));
- $this->assertEqual($browser->getContent(), 'Page onePage two');
- }
-
- function testCanNavigateToNestedFrameByIndex() {
- $inner = '<frameset>' .
- '<frame src="one.html">' .
- '<frame src="two.html">' .
- '</frameset>';
- $outer = '<frameset>' .
- '<frame src="inner.html">' .
- '<frame src="three.html">' .
- '</frameset>';
- $browser = $this->createBrowser($this->createUserAgent(array(
- 'http://site.with.nested.frames/' => $outer,
- 'http://site.with.nested.frames/inner.html' => $inner,
- 'http://site.with.nested.frames/one.html' => 'Page one',
- 'http://site.with.nested.frames/two.html' => 'Page two',
- 'http://site.with.nested.frames/three.html' => 'Page three')));
-
- $browser->get('http://site.with.nested.frames/');
- $this->assertEqual($browser->getContent(), 'Page onePage twoPage three');
-
- $this->assertTrue($browser->setFrameFocusByIndex(1));
- $this->assertEqual($browser->getFrameFocus(), array(1));
- $this->assertTrue($browser->setFrameFocusByIndex(1));
- $this->assertEqual($browser->getFrameFocus(), array(1, 1));
- $this->assertEqual($browser->getContent(), 'Page one');
-
- $this->assertTrue($browser->setFrameFocusByIndex(2));
- $this->assertEqual($browser->getFrameFocus(), array(1, 2));
- $this->assertEqual($browser->getContent(), 'Page two');
-
- $browser->clearFrameFocus();
- $this->assertTrue($browser->setFrameFocusByIndex(2));
- $this->assertEqual($browser->getFrameFocus(), array(2));
- $this->assertEqual($browser->getContent(), 'Page three');
-
- $this->assertTrue($browser->setFrameFocusByIndex(1));
- $this->assertEqual($browser->getContent(), 'Page onePage two');
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/collector_test.php b/3rdparty/simpletest/test/collector_test.php
deleted file mode 100644
index efdbf377ece..00000000000
--- a/3rdparty/simpletest/test/collector_test.php
+++ /dev/null
@@ -1,50 +0,0 @@
-<?php
-// $Id: collector_test.php 1769 2008-04-19 14:39:00Z pp11 $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../collector.php');
-SimpleTest::ignore('MockTestSuite');
-Mock::generate('TestSuite');
-
-class PathEqualExpectation extends EqualExpectation {
- function __construct($value, $message = '%s') {
- parent::__construct(str_replace("\\", '/', $value), $message);
- }
-
- function test($compare) {
- return parent::test(str_replace("\\", '/', $compare));
- }
-}
-
-class TestOfCollector extends UnitTestCase {
- function testCollectionIsAddedToGroup() {
- $suite = new MockTestSuite();
- $suite->expectMinimumCallCount('addFile', 2);
- $suite->expect(
- 'addFile',
- array(new PatternExpectation('/collectable\\.(1|2)$/')));
- $collector = new SimpleCollector();
- $collector->collect($suite, dirname(__FILE__) . '/support/collector/');
- }
-}
-
-class TestOfPatternCollector extends UnitTestCase {
-
- function testAddingEverythingToGroup() {
- $suite = new MockTestSuite();
- $suite->expectCallCount('addFile', 2);
- $suite->expect(
- 'addFile',
- array(new PatternExpectation('/collectable\\.(1|2)$/')));
- $collector = new SimplePatternCollector('/.*/');
- $collector->collect($suite, dirname(__FILE__) . '/support/collector/');
- }
-
- function testOnlyMatchedFilesAreAddedToGroup() {
- $suite = new MockTestSuite();
- $suite->expectOnce('addFile', array(new PathEqualExpectation(
- dirname(__FILE__) . '/support/collector/collectable.1')));
- $collector = new SimplePatternCollector('/1$/');
- $collector->collect($suite, dirname(__FILE__) . '/support/collector/');
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/command_line_test.php b/3rdparty/simpletest/test/command_line_test.php
deleted file mode 100644
index 5baabff33c6..00000000000
--- a/3rdparty/simpletest/test/command_line_test.php
+++ /dev/null
@@ -1,40 +0,0 @@
-<?php
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../default_reporter.php');
-
-class TestOfCommandLineParsing extends UnitTestCase {
-
- function testDefaultsToEmptyStringToMeanNullToTheSelectiveReporter() {
- $parser = new SimpleCommandLineParser(array());
- $this->assertIdentical($parser->getTest(), '');
- $this->assertIdentical($parser->getTestCase(), '');
- }
-
- function testNotXmlByDefault() {
- $parser = new SimpleCommandLineParser(array());
- $this->assertFalse($parser->isXml());
- }
-
- function testCanDetectRequestForXml() {
- $parser = new SimpleCommandLineParser(array('--xml'));
- $this->assertTrue($parser->isXml());
- }
-
- function testCanReadAssignmentSyntax() {
- $parser = new SimpleCommandLineParser(array('--test=myTest'));
- $this->assertEqual($parser->getTest(), 'myTest');
- }
-
- function testCanReadFollowOnSyntax() {
- $parser = new SimpleCommandLineParser(array('--test', 'myTest'));
- $this->assertEqual($parser->getTest(), 'myTest');
- }
-
- function testCanReadShortForms() {
- $parser = new SimpleCommandLineParser(array('-t', 'myTest', '-c', 'MyClass', '-x'));
- $this->assertEqual($parser->getTest(), 'myTest');
- $this->assertEqual($parser->getTestCase(), 'MyClass');
- $this->assertTrue($parser->isXml());
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/compatibility_test.php b/3rdparty/simpletest/test/compatibility_test.php
deleted file mode 100644
index b8635e5bb83..00000000000
--- a/3rdparty/simpletest/test/compatibility_test.php
+++ /dev/null
@@ -1,87 +0,0 @@
-<?php
-// $Id: compatibility_test.php 1748 2008-04-14 01:50:41Z lastcraft $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../compatibility.php');
-
-class ComparisonClass { }
-class ComparisonSubclass extends ComparisonClass { }
-interface ComparisonInterface { }
-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() {
- $object = new ComparisonClassWithInterface();
- $this->assertFalse(SimpleTestCompatibility::isA(
- new ComparisonClass(),
- 'ComparisonInterface'));
- $this->assertTrue(SimpleTestCompatibility::isA(
- new ComparisonClassWithInterface(),
- 'ComparisonInterface'));
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/cookies_test.php b/3rdparty/simpletest/test/cookies_test.php
deleted file mode 100644
index 0b49e43bf9f..00000000000
--- a/3rdparty/simpletest/test/cookies_test.php
+++ /dev/null
@@ -1,227 +0,0 @@
-<?php
-// $Id: cookies_test.php 1506 2007-05-07 00:58:03Z lastcraft $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../cookies.php');
-
-class TestOfCookie extends UnitTestCase {
-
- function testCookieDefaults() {
- $cookie = new SimpleCookie("name");
- $this->assertFalse($cookie->getValue());
- $this->assertEqual($cookie->getPath(), "/");
- $this->assertIdentical($cookie->getHost(), false);
- $this->assertFalse($cookie->getExpiry());
- $this->assertFalse($cookie->isSecure());
- }
-
- function testCookieAccessors() {
- $cookie = new SimpleCookie(
- "name",
- "value",
- "/path",
- "Mon, 18 Nov 2002 15:50:29 GMT",
- true);
- $this->assertEqual($cookie->getName(), "name");
- $this->assertEqual($cookie->getValue(), "value");
- $this->assertEqual($cookie->getPath(), "/path/");
- $this->assertEqual($cookie->getExpiry(), "Mon, 18 Nov 2002 15:50:29 GMT");
- $this->assertTrue($cookie->isSecure());
- }
-
- function testFullHostname() {
- $cookie = new SimpleCookie("name");
- $this->assertTrue($cookie->setHost("host.name.here"));
- $this->assertEqual($cookie->getHost(), "host.name.here");
- $this->assertTrue($cookie->setHost("host.com"));
- $this->assertEqual($cookie->getHost(), "host.com");
- }
-
- function testHostTruncation() {
- $cookie = new SimpleCookie("name");
- $cookie->setHost("this.host.name.here");
- $this->assertEqual($cookie->getHost(), "host.name.here");
- $cookie->setHost("this.host.com");
- $this->assertEqual($cookie->getHost(), "host.com");
- $this->assertTrue($cookie->setHost("dashes.in-host.com"));
- $this->assertEqual($cookie->getHost(), "in-host.com");
- }
-
- function testBadHosts() {
- $cookie = new SimpleCookie("name");
- $this->assertFalse($cookie->setHost("gibberish"));
- $this->assertFalse($cookie->setHost("host.here"));
- $this->assertFalse($cookie->setHost("host..com"));
- $this->assertFalse($cookie->setHost("..."));
- $this->assertFalse($cookie->setHost("host.com."));
- }
-
- function testHostValidity() {
- $cookie = new SimpleCookie("name");
- $cookie->setHost("this.host.name.here");
- $this->assertTrue($cookie->isValidHost("host.name.here"));
- $this->assertTrue($cookie->isValidHost("that.host.name.here"));
- $this->assertFalse($cookie->isValidHost("bad.host"));
- $this->assertFalse($cookie->isValidHost("nearly.name.here"));
- }
-
- function testPathValidity() {
- $cookie = new SimpleCookie("name", "value", "/path");
- $this->assertFalse($cookie->isValidPath("/"));
- $this->assertTrue($cookie->isValidPath("/path/"));
- $this->assertTrue($cookie->isValidPath("/path/more"));
- }
-
- function testSessionExpiring() {
- $cookie = new SimpleCookie("name", "value", "/path");
- $this->assertTrue($cookie->isExpired(0));
- }
-
- function testTimestampExpiry() {
- $cookie = new SimpleCookie("name", "value", "/path", 456);
- $this->assertFalse($cookie->isExpired(0));
- $this->assertTrue($cookie->isExpired(457));
- $this->assertFalse($cookie->isExpired(455));
- }
-
- function testDateExpiry() {
- $cookie = new SimpleCookie(
- "name",
- "value",
- "/path",
- "Mon, 18 Nov 2002 15:50:29 GMT");
- $this->assertTrue($cookie->isExpired("Mon, 18 Nov 2002 15:50:30 GMT"));
- $this->assertFalse($cookie->isExpired("Mon, 18 Nov 2002 15:50:28 GMT"));
- }
-
- function testAging() {
- $cookie = new SimpleCookie("name", "value", "/path", 200);
- $cookie->agePrematurely(199);
- $this->assertFalse($cookie->isExpired(0));
- $cookie->agePrematurely(2);
- $this->assertTrue($cookie->isExpired(0));
- }
-}
-
-class TestOfCookieJar extends UnitTestCase {
-
- function testAddCookie() {
- $jar = new SimpleCookieJar();
- $jar->setCookie("a", "A");
- $this->assertEqual($jar->selectAsPairs(new SimpleUrl('/')), array('a=A'));
- }
-
- function testHostFilter() {
- $jar = new SimpleCookieJar();
- $jar->setCookie('a', 'A', 'my-host.com');
- $jar->setCookie('b', 'B', 'another-host.com');
- $jar->setCookie('c', 'C');
- $this->assertEqual(
- $jar->selectAsPairs(new SimpleUrl('my-host.com')),
- array('a=A', 'c=C'));
- $this->assertEqual(
- $jar->selectAsPairs(new SimpleUrl('another-host.com')),
- array('b=B', 'c=C'));
- $this->assertEqual(
- $jar->selectAsPairs(new SimpleUrl('www.another-host.com')),
- array('b=B', 'c=C'));
- $this->assertEqual(
- $jar->selectAsPairs(new SimpleUrl('new-host.org')),
- array('c=C'));
- $this->assertEqual(
- $jar->selectAsPairs(new SimpleUrl('/')),
- array('a=A', 'b=B', 'c=C'));
- }
-
- function testPathFilter() {
- $jar = new SimpleCookieJar();
- $jar->setCookie('a', 'A', false, '/path/');
- $this->assertEqual($jar->selectAsPairs(new SimpleUrl('/')), array());
- $this->assertEqual($jar->selectAsPairs(new SimpleUrl('/elsewhere')), array());
- $this->assertEqual($jar->selectAsPairs(new SimpleUrl('/path/')), array('a=A'));
- $this->assertEqual($jar->selectAsPairs(new SimpleUrl('/path')), array('a=A'));
- $this->assertEqual($jar->selectAsPairs(new SimpleUrl('/pa')), array());
- $this->assertEqual($jar->selectAsPairs(new SimpleUrl('/path/here')), array('a=A'));
- }
-
- function testPathFilterDeeply() {
- $jar = new SimpleCookieJar();
- $jar->setCookie('a', 'A', false, '/path/more_path/');
- $this->assertEqual($jar->selectAsPairs(new SimpleUrl('/path/')), array());
- $this->assertEqual($jar->selectAsPairs(new SimpleUrl('/path')), array());
- $this->assertEqual($jar->selectAsPairs(new SimpleUrl('/pa')), array());
- $this->assertEqual($jar->selectAsPairs(new SimpleUrl('/path/more_path/')), array('a=A'));
- $this->assertEqual($jar->selectAsPairs(new SimpleUrl('/path/more_path/and_more')), array('a=A'));
- $this->assertEqual($jar->selectAsPairs(new SimpleUrl('/path/not_here/')), array());
- }
-
- function testMultipleCookieWithDifferentPathsButSameName() {
- $jar = new SimpleCookieJar();
- $jar->setCookie('a', 'abc', false, '/');
- $jar->setCookie('a', '123', false, '/path/here/');
- $this->assertEqual(
- $jar->selectAsPairs(new SimpleUrl('/')),
- array('a=abc'));
- $this->assertEqual(
- $jar->selectAsPairs(new SimpleUrl('my-host.com/')),
- array('a=abc'));
- $this->assertEqual(
- $jar->selectAsPairs(new SimpleUrl('my-host.com/path/')),
- array('a=abc'));
- $this->assertEqual(
- $jar->selectAsPairs(new SimpleUrl('my-host.com/path/here')),
- array('a=abc', 'a=123'));
- $this->assertEqual(
- $jar->selectAsPairs(new SimpleUrl('my-host.com/path/here/there')),
- array('a=abc', 'a=123'));
- }
-
- function testOverwrite() {
- $jar = new SimpleCookieJar();
- $jar->setCookie('a', 'abc', false, '/');
- $jar->setCookie('a', 'cde', false, '/');
- $this->assertEqual($jar->selectAsPairs(new SimpleUrl('/')), array('a=cde'));
- }
-
- function testClearSessionCookies() {
- $jar = new SimpleCookieJar();
- $jar->setCookie('a', 'A', false, '/');
- $jar->restartSession();
- $this->assertEqual($jar->selectAsPairs(new SimpleUrl('/')), array());
- }
-
- function testExpiryFilterByDate() {
- $jar = new SimpleCookieJar();
- $jar->setCookie('a', 'A', false, '/', 'Wed, 25-Dec-02 04:24:20 GMT');
- $jar->restartSession("Wed, 25-Dec-02 04:24:19 GMT");
- $this->assertEqual($jar->selectAsPairs(new SimpleUrl('/')), array('a=A'));
- $jar->restartSession("Wed, 25-Dec-02 04:24:21 GMT");
- $this->assertEqual($jar->selectAsPairs(new SimpleUrl('/')), array());
- }
-
- function testExpiryFilterByAgeing() {
- $jar = new SimpleCookieJar();
- $jar->setCookie('a', 'A', false, '/', 'Wed, 25-Dec-02 04:24:20 GMT');
- $jar->restartSession("Wed, 25-Dec-02 04:24:19 GMT");
- $this->assertEqual($jar->selectAsPairs(new SimpleUrl('/')), array('a=A'));
- $jar->agePrematurely(2);
- $jar->restartSession("Wed, 25-Dec-02 04:24:19 GMT");
- $this->assertEqual($jar->selectAsPairs(new SimpleUrl('/')), array());
- }
-
- function testCookieClearing() {
- $jar = new SimpleCookieJar();
- $jar->setCookie('a', 'abc', false, '/');
- $jar->setCookie('a', '', false, '/');
- $this->assertEqual($jar->selectAsPairs(new SimpleUrl('/')), array('a='));
- }
-
- function testCookieClearByLoweringDate() {
- $jar = new SimpleCookieJar();
- $jar->setCookie('a', 'abc', false, '/', 'Wed, 25-Dec-02 04:24:21 GMT');
- $jar->setCookie('a', 'def', false, '/', 'Wed, 25-Dec-02 04:24:19 GMT');
- $this->assertEqual($jar->selectAsPairs(new SimpleUrl('/')), array('a=def'));
- $jar->restartSession('Wed, 25-Dec-02 04:24:20 GMT');
- $this->assertEqual($jar->selectAsPairs(new SimpleUrl('/')), array());
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/detached_test.php b/3rdparty/simpletest/test/detached_test.php
deleted file mode 100644
index f651d97eb61..00000000000
--- a/3rdparty/simpletest/test/detached_test.php
+++ /dev/null
@@ -1,15 +0,0 @@
-<?php
-// $Id: detached_test.php 1884 2009-07-01 16:30:40Z lastcraft $
-require_once('../detached.php');
-require_once('../reporter.php');
-
-// The following URL will depend on your own installation.
-$command = 'php ' . dirname(__FILE__) . '/visual_test.php xml';
-
-$test = new TestSuite('Remote tests');
-$test->add(new DetachedTestCase($command));
-if (SimpleReporter::inCli()) {
- exit ($test->run(new TextReporter()) ? 0 : 1);
-}
-$test->run(new HtmlReporter());
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/dumper_test.php b/3rdparty/simpletest/test/dumper_test.php
deleted file mode 100644
index 789047de924..00000000000
--- a/3rdparty/simpletest/test/dumper_test.php
+++ /dev/null
@@ -1,88 +0,0 @@
-<?php
-// $Id: dumper_test.php 1505 2007-04-30 23:39:59Z lastcraft $
-require_once(dirname(__FILE__) . '/../autorun.php');
-
-class DumperDummy {
-}
-
-class TestOfTextFormatting extends UnitTestCase {
-
- function testClipping() {
- $dumper = new SimpleDumper();
- $this->assertEqual(
- $dumper->clipString("Hello", 6),
- "Hello",
- "Hello, 6->%s");
- $this->assertEqual(
- $dumper->clipString("Hello", 5),
- "Hello",
- "Hello, 5->%s");
- $this->assertEqual(
- $dumper->clipString("Hello world", 3),
- "Hel...",
- "Hello world, 3->%s");
- $this->assertEqual(
- $dumper->clipString("Hello world", 6, 3),
- "Hello ...",
- "Hello world, 6, 3->%s");
- $this->assertEqual(
- $dumper->clipString("Hello world", 3, 6),
- "...o w...",
- "Hello world, 3, 6->%s");
- $this->assertEqual(
- $dumper->clipString("Hello world", 4, 11),
- "...orld",
- "Hello world, 4, 11->%s");
- $this->assertEqual(
- $dumper->clipString("Hello world", 4, 12),
- "...orld",
- "Hello world, 4, 12->%s");
- }
-
- function testDescribeNull() {
- $dumper = new SimpleDumper();
- $this->assertPattern('/null/i', $dumper->describeValue(null));
- }
-
- function testDescribeBoolean() {
- $dumper = new SimpleDumper();
- $this->assertPattern('/boolean/i', $dumper->describeValue(true));
- $this->assertPattern('/true/i', $dumper->describeValue(true));
- $this->assertPattern('/false/i', $dumper->describeValue(false));
- }
-
- function testDescribeString() {
- $dumper = new SimpleDumper();
- $this->assertPattern('/string/i', $dumper->describeValue('Hello'));
- $this->assertPattern('/Hello/', $dumper->describeValue('Hello'));
- }
-
- function testDescribeInteger() {
- $dumper = new SimpleDumper();
- $this->assertPattern('/integer/i', $dumper->describeValue(35));
- $this->assertPattern('/35/', $dumper->describeValue(35));
- }
-
- function testDescribeFloat() {
- $dumper = new SimpleDumper();
- $this->assertPattern('/float/i', $dumper->describeValue(0.99));
- $this->assertPattern('/0\.99/', $dumper->describeValue(0.99));
- }
-
- function testDescribeArray() {
- $dumper = new SimpleDumper();
- $this->assertPattern('/array/i', $dumper->describeValue(array(1, 4)));
- $this->assertPattern('/2/i', $dumper->describeValue(array(1, 4)));
- }
-
- function testDescribeObject() {
- $dumper = new SimpleDumper();
- $this->assertPattern(
- '/object/i',
- $dumper->describeValue(new DumperDummy()));
- $this->assertPattern(
- '/DumperDummy/i',
- $dumper->describeValue(new DumperDummy()));
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/eclipse_test.php b/3rdparty/simpletest/test/eclipse_test.php
deleted file mode 100644
index c90cbc918fd..00000000000
--- a/3rdparty/simpletest/test/eclipse_test.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-// $Id: eclipse_test.php 1739 2008-04-09 20:48:37Z edwardzyang $
-
-//To run this from the eclipse plugin...you need to make sure that the
-//SimpleTest path in the preferences is the same as the location of the
-//eclipse.php file below otherwise you end up with two "different" eclipse.php
-//files included and that does not work...
-
-include_once(dirname(__FILE__) . '/../eclipse.php');
-Mock::generate('SimpleSocket');
-
-class TestOfEclipse extends UnitTestCase {
-
- function testPass() {
- $listener = &new MockSimpleSocket();
-
- $fullpath = realpath(dirname(__FILE__).'/support/test1.php');
- $testpath = EclipseReporter::escapeVal($fullpath);
- $expected = "{status:\"pass\",message:\"pass1 at [$testpath line 4]\",group:\"$testpath\",case:\"test1\",method:\"test_pass\"}";
- //this should work...but it doesn't so the next line and the last line are the hacks
- //$listener->expectOnce('write',array($expected));
- $listener->setReturnValue('write',-1);
-
- $pathparts = pathinfo($fullpath);
- $filename = $pathparts['basename'];
- $test= &new TestSuite($filename);
- $test->addTestFile($fullpath);
- $test->run(new EclipseReporter($listener));
- $this->assertEqual($expected,$listener->output);
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/encoding_test.php b/3rdparty/simpletest/test/encoding_test.php
deleted file mode 100644
index a09236e057c..00000000000
--- a/3rdparty/simpletest/test/encoding_test.php
+++ /dev/null
@@ -1,240 +0,0 @@
-<?php
-// $Id: encoding_test.php 1963 2009-10-07 11:57:52Z maetl_ $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../url.php');
-require_once(dirname(__FILE__) . '/../socket.php');
-
-Mock::generate('SimpleSocket');
-
-class TestOfEncodedParts extends UnitTestCase {
-
- function testFormEncodedAsKeyEqualsValue() {
- $pair = new SimpleEncodedPair('a', 'A');
- $this->assertEqual($pair->asRequest(), 'a=A');
- }
-
- function testMimeEncodedAsHeadersAndContent() {
- $pair = new SimpleEncodedPair('a', 'A');
- $this->assertEqual(
- $pair->asMime(),
- "Content-Disposition: form-data; name=\"a\"\r\n\r\nA");
- }
-
- function testAttachmentEncodedAsHeadersWithDispositionAndContent() {
- $part = new SimpleAttachment('a', 'A', 'aaa.txt');
- $this->assertEqual(
- $part->asMime(),
- "Content-Disposition: form-data; name=\"a\"; filename=\"aaa.txt\"\r\n" .
- "Content-Type: text/plain\r\n\r\nA");
- }
-}
-
-class TestOfEncoding extends UnitTestCase {
- private $content_so_far;
-
- function write($content) {
- $this->content_so_far .= $content;
- }
-
- function clear() {
- $this->content_so_far = '';
- }
-
- function assertWritten($encoding, $content, $message = '%s') {
- $this->clear();
- $encoding->writeTo($this);
- $this->assertIdentical($this->content_so_far, $content, $message);
- }
-
- function testGetEmpty() {
- $encoding = new SimpleGetEncoding();
- $this->assertIdentical($encoding->getValue('a'), false);
- $this->assertIdentical($encoding->asUrlRequest(), '');
- }
-
- function testPostEmpty() {
- $encoding = new SimplePostEncoding();
- $this->assertIdentical($encoding->getValue('a'), false);
- $this->assertWritten($encoding, '');
- }
-
- function testPrefilled() {
- $encoding = new SimplePostEncoding(array('a' => 'aaa'));
- $this->assertIdentical($encoding->getValue('a'), 'aaa');
- $this->assertWritten($encoding, 'a=aaa');
- }
-
- function testPrefilledWithTwoLevels() {
- $query = array('a' => array('aa' => 'aaa'));
- $encoding = new SimplePostEncoding($query);
- $this->assertTrue($encoding->hasMoreThanOneLevel($query));
- $this->assertEqual($encoding->rewriteArrayWithMultipleLevels($query), array('a[aa]' => 'aaa'));
- $this->assertIdentical($encoding->getValue('a[aa]'), 'aaa');
- $this->assertWritten($encoding, 'a%5Baa%5D=aaa');
- }
-
- function testPrefilledWithThreeLevels() {
- $query = array('a' => array('aa' => array('aaa' => 'aaaa')));
- $encoding = new SimplePostEncoding($query);
- $this->assertTrue($encoding->hasMoreThanOneLevel($query));
- $this->assertEqual($encoding->rewriteArrayWithMultipleLevels($query), array('a[aa][aaa]' => 'aaaa'));
- $this->assertIdentical($encoding->getValue('a[aa][aaa]'), 'aaaa');
- $this->assertWritten($encoding, 'a%5Baa%5D%5Baaa%5D=aaaa');
- }
-
- function testPrefilledWithObject() {
- $encoding = new SimplePostEncoding(new SimpleEncoding(array('a' => 'aaa')));
- $this->assertIdentical($encoding->getValue('a'), 'aaa');
- $this->assertWritten($encoding, 'a=aaa');
- }
-
- function testMultiplePrefilled() {
- $query = array('a' => array('a1', 'a2'));
- $encoding = new SimplePostEncoding($query);
- $this->assertTrue($encoding->hasMoreThanOneLevel($query));
- $this->assertEqual($encoding->rewriteArrayWithMultipleLevels($query), array('a[0]' => 'a1', 'a[1]' => 'a2'));
- $this->assertIdentical($encoding->getValue('a[0]'), 'a1');
- $this->assertIdentical($encoding->getValue('a[1]'), 'a2');
- $this->assertWritten($encoding, 'a%5B0%5D=a1&a%5B1%5D=a2');
- }
-
- function testSingleParameter() {
- $encoding = new SimplePostEncoding();
- $encoding->add('a', 'Hello');
- $this->assertEqual($encoding->getValue('a'), 'Hello');
- $this->assertWritten($encoding, 'a=Hello');
- }
-
- function testFalseParameter() {
- $encoding = new SimplePostEncoding();
- $encoding->add('a', false);
- $this->assertEqual($encoding->getValue('a'), false);
- $this->assertWritten($encoding, '');
- }
-
- function testUrlEncoding() {
- $encoding = new SimplePostEncoding();
- $encoding->add('a', 'Hello there!');
- $this->assertWritten($encoding, 'a=Hello+there%21');
- }
-
- function testUrlEncodingOfKey() {
- $encoding = new SimplePostEncoding();
- $encoding->add('a!', 'Hello');
- $this->assertWritten($encoding, 'a%21=Hello');
- }
-
- function testMultipleParameter() {
- $encoding = new SimplePostEncoding();
- $encoding->add('a', 'Hello');
- $encoding->add('b', 'Goodbye');
- $this->assertWritten($encoding, 'a=Hello&b=Goodbye');
- }
-
- function testEmptyParameters() {
- $encoding = new SimplePostEncoding();
- $encoding->add('a', '');
- $encoding->add('b', '');
- $this->assertWritten($encoding, 'a=&b=');
- }
-
- function testRepeatedParameter() {
- $encoding = new SimplePostEncoding();
- $encoding->add('a', 'Hello');
- $encoding->add('a', 'Goodbye');
- $this->assertIdentical($encoding->getValue('a'), array('Hello', 'Goodbye'));
- $this->assertWritten($encoding, 'a=Hello&a=Goodbye');
- }
-
- function testAddingLists() {
- $encoding = new SimplePostEncoding();
- $encoding->add('a', array('Hello', 'Goodbye'));
- $this->assertIdentical($encoding->getValue('a'), array('Hello', 'Goodbye'));
- $this->assertWritten($encoding, 'a=Hello&a=Goodbye');
- }
-
- function testMergeInHash() {
- $encoding = new SimpleGetEncoding(array('a' => 'A1', 'b' => 'B'));
- $encoding->merge(array('a' => 'A2'));
- $this->assertIdentical($encoding->getValue('a'), array('A1', 'A2'));
- $this->assertIdentical($encoding->getValue('b'), 'B');
- }
-
- function testMergeInObject() {
- $encoding = new SimpleGetEncoding(array('a' => 'A1', 'b' => 'B'));
- $encoding->merge(new SimpleEncoding(array('a' => 'A2')));
- $this->assertIdentical($encoding->getValue('a'), array('A1', 'A2'));
- $this->assertIdentical($encoding->getValue('b'), 'B');
- }
-
- function testPrefilledMultipart() {
- $encoding = new SimpleMultipartEncoding(array('a' => 'aaa'), 'boundary');
- $this->assertIdentical($encoding->getValue('a'), 'aaa');
- $this->assertwritten($encoding,
- "--boundary\r\n" .
- "Content-Disposition: form-data; name=\"a\"\r\n" .
- "\r\n" .
- "aaa\r\n" .
- "--boundary--\r\n");
- }
-
- function testAttachment() {
- $encoding = new SimpleMultipartEncoding(array(), 'boundary');
- $encoding->attach('a', 'aaa', 'aaa.txt');
- $this->assertIdentical($encoding->getValue('a'), 'aaa.txt');
- $this->assertwritten($encoding,
- "--boundary\r\n" .
- "Content-Disposition: form-data; name=\"a\"; filename=\"aaa.txt\"\r\n" .
- "Content-Type: text/plain\r\n" .
- "\r\n" .
- "aaa\r\n" .
- "--boundary--\r\n");
- }
-
- function testEntityEncodingDefaultContentType() {
- $encoding = new SimpleEntityEncoding();
- $this->assertIdentical($encoding->getContentType(), 'application/x-www-form-urlencoded');
- $this->assertWritten($encoding, '');
- }
-
- function testEntityEncodingTextBody() {
- $encoding = new SimpleEntityEncoding('plain text');
- $this->assertIdentical($encoding->getContentType(), 'text/plain');
- $this->assertWritten($encoding, 'plain text');
- }
-
- function testEntityEncodingXmlBody() {
- $encoding = new SimpleEntityEncoding('<p><a>xml</b><b>text</b></p>', 'text/xml');
- $this->assertIdentical($encoding->getContentType(), 'text/xml');
- $this->assertWritten($encoding, '<p><a>xml</b><b>text</b></p>');
- }
-}
-
-class TestOfEncodingHeaders extends UnitTestCase {
-
- function testEmptyEncodingWritesZeroContentLength() {
- $socket = new MockSimpleSocket();
- $socket->expectAt(0, 'write', array("Content-Length: 0\r\n"));
- $socket->expectAt(1, 'write', array("Content-Type: application/x-www-form-urlencoded\r\n"));
- $encoding = new SimpleEntityEncoding();
- $encoding->writeHeadersTo($socket);
- }
-
- function testTextEncodingWritesDefaultContentType() {
- $socket = new MockSimpleSocket();
- $socket->expectAt(0, 'write', array("Content-Length: 18\r\n"));
- $socket->expectAt(1, 'write', array("Content-Type: text/plain\r\n"));
- $encoding = new SimpleEntityEncoding('one two three four');
- $encoding->writeHeadersTo($socket);
- }
-
- function testEmptyMultipartEncodingWritesEndBoundaryContentLength() {
- $socket = new MockSimpleSocket();
- $socket->expectAt(0, 'write', array("Content-Length: 14\r\n"));
- $socket->expectAt(1, 'write', array("Content-Type: multipart/form-data; boundary=boundary\r\n"));
- $encoding = new SimpleMultipartEncoding(array(), 'boundary');
- $encoding->writeHeadersTo($socket);
- }
-
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/errors_test.php b/3rdparty/simpletest/test/errors_test.php
deleted file mode 100644
index ebb9e05891f..00000000000
--- a/3rdparty/simpletest/test/errors_test.php
+++ /dev/null
@@ -1,229 +0,0 @@
-<?php
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../errors.php');
-require_once(dirname(__FILE__) . '/../expectation.php');
-require_once(dirname(__FILE__) . '/../test_case.php');
-Mock::generate('SimpleTestCase');
-Mock::generate('SimpleExpectation');
-SimpleTest::ignore('MockSimpleTestCase');
-
-class TestOfErrorQueue extends UnitTestCase {
-
- function setUp() {
- $context = SimpleTest::getContext();
- $queue = $context->get('SimpleErrorQueue');
- $queue->clear();
- }
-
- function tearDown() {
- $context = SimpleTest::getContext();
- $queue = $context->get('SimpleErrorQueue');
- $queue->clear();
- }
-
- function testExpectationMatchCancelsIncomingError() {
- $test = new MockSimpleTestCase();
- $test->expectOnce('assert', array(
- new IdenticalExpectation(new AnythingExpectation()),
- 'B',
- 'a message'));
- $test->setReturnValue('assert', true);
- $test->expectNever('error');
- $queue = new SimpleErrorQueue();
- $queue->setTestCase($test);
- $queue->expectError(new AnythingExpectation(), 'a message');
- $queue->add(1024, 'B', 'b.php', 100);
- }
-}
-
-class TestOfErrorTrap extends UnitTestCase {
- private $old;
-
- function setUp() {
- $this->old = error_reporting(E_ALL);
- set_error_handler('SimpleTestErrorHandler');
- }
-
- function tearDown() {
- restore_error_handler();
- error_reporting($this->old);
- }
-
- function testQueueStartsEmpty() {
- $context = SimpleTest::getContext();
- $queue = $context->get('SimpleErrorQueue');
- $this->assertFalse($queue->extract());
- }
-
- function testErrorsAreSwallowedByMatchingExpectation() {
- $this->expectError('Ouch!');
- trigger_error('Ouch!');
- }
-
- function testErrorsAreSwallowedInOrder() {
- $this->expectError('a');
- $this->expectError('b');
- trigger_error('a');
- trigger_error('b');
- }
-
- function testAnyErrorCanBeSwallowed() {
- $this->expectError();
- trigger_error('Ouch!');
- }
-
- function testErrorCanBeSwallowedByPatternMatching() {
- $this->expectError(new PatternExpectation('/ouch/i'));
- trigger_error('Ouch!');
- }
-
- function testErrorWithPercentsPassesWithNoSprintfError() {
- $this->expectError("%");
- trigger_error('%');
- }
-}
-
-class TestOfErrors extends UnitTestCase {
- private $old;
-
- function setUp() {
- $this->old = error_reporting(E_ALL);
- }
-
- function tearDown() {
- error_reporting($this->old);
- }
-
- function testDefaultWhenAllReported() {
- error_reporting(E_ALL);
- $this->expectError('Ouch!');
- trigger_error('Ouch!');
- }
-
- function testNoticeWhenReported() {
- error_reporting(E_ALL);
- $this->expectError('Ouch!');
- trigger_error('Ouch!', E_USER_NOTICE);
- }
-
- function testWarningWhenReported() {
- error_reporting(E_ALL);
- $this->expectError('Ouch!');
- trigger_error('Ouch!', E_USER_WARNING);
- }
-
- function testErrorWhenReported() {
- error_reporting(E_ALL);
- $this->expectError('Ouch!');
- trigger_error('Ouch!', E_USER_ERROR);
- }
-
- function testNoNoticeWhenNotReported() {
- error_reporting(0);
- trigger_error('Ouch!', E_USER_NOTICE);
- }
-
- function testNoWarningWhenNotReported() {
- error_reporting(0);
- trigger_error('Ouch!', E_USER_WARNING);
- }
-
- function testNoticeSuppressedWhenReported() {
- error_reporting(E_ALL);
- @trigger_error('Ouch!', E_USER_NOTICE);
- }
-
- function testWarningSuppressedWhenReported() {
- error_reporting(E_ALL);
- @trigger_error('Ouch!', E_USER_WARNING);
- }
-
- function testErrorWithPercentsReportedWithNoSprintfError() {
- $this->expectError('%');
- trigger_error('%');
- }
-}
-
-class TestOfPHP52RecoverableErrors extends UnitTestCase {
- function skip() {
- $this->skipIf(
- version_compare(phpversion(), '5.2', '<'),
- 'E_RECOVERABLE_ERROR not tested for PHP below 5.2');
- }
-
- function testError() {
- eval('
- class RecoverableErrorTestingStub {
- function ouch(RecoverableErrorTestingStub $obj) {
- }
- }
- ');
-
- $stub = new RecoverableErrorTestingStub();
- $this->expectError(new PatternExpectation('/must be an instance of RecoverableErrorTestingStub/i'));
- $stub->ouch(new stdClass());
- }
-}
-
-class TestOfErrorsExcludingPHP52AndAbove extends UnitTestCase {
- function skip() {
- $this->skipIf(
- version_compare(phpversion(), '5.2', '>='),
- 'E_USER_ERROR not tested for PHP 5.2 and above');
- }
-
- function testNoErrorWhenNotReported() {
- error_reporting(0);
- trigger_error('Ouch!', E_USER_ERROR);
- }
-
- function testErrorSuppressedWhenReported() {
- error_reporting(E_ALL);
- @trigger_error('Ouch!', E_USER_ERROR);
- }
-}
-
-SimpleTest::ignore('TestOfNotEnoughErrors');
-/**
- * This test is ignored as it is used by {@link TestRunnerForLeftOverAndNotEnoughErrors}
- * to verify that it fails as expected.
- *
- * @ignore
- */
-class TestOfNotEnoughErrors extends UnitTestCase {
- function testExpectTwoErrorsThrowOne() {
- $this->expectError('Error 1');
- trigger_error('Error 1');
- $this->expectError('Error 2');
- }
-}
-
-SimpleTest::ignore('TestOfLeftOverErrors');
-/**
- * This test is ignored as it is used by {@link TestRunnerForLeftOverAndNotEnoughErrors}
- * to verify that it fails as expected.
- *
- * @ignore
- */
-class TestOfLeftOverErrors extends UnitTestCase {
- function testExpectOneErrorGetTwo() {
- $this->expectError('Error 1');
- trigger_error('Error 1');
- trigger_error('Error 2');
- }
-}
-
-class TestRunnerForLeftOverAndNotEnoughErrors extends UnitTestCase {
- function testRunLeftOverErrorsTestCase() {
- $test = new TestOfLeftOverErrors();
- $this->assertFalse($test->run(new SimpleReporter()));
- }
-
- function testRunNotEnoughErrors() {
- $test = new TestOfNotEnoughErrors();
- $this->assertFalse($test->run(new SimpleReporter()));
- }
-}
-
-// TODO: Add stacked error handler test
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/exceptions_test.php b/3rdparty/simpletest/test/exceptions_test.php
deleted file mode 100644
index 1011543d4fa..00000000000
--- a/3rdparty/simpletest/test/exceptions_test.php
+++ /dev/null
@@ -1,183 +0,0 @@
-<?php
-// $Id: exceptions_test.php 1882 2009-07-01 14:30:05Z lastcraft $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../exceptions.php');
-require_once(dirname(__FILE__) . '/../expectation.php');
-require_once(dirname(__FILE__) . '/../test_case.php');
-Mock::generate('SimpleTestCase');
-Mock::generate('SimpleExpectation');
-
-class MyTestException extends Exception {}
-class HigherTestException extends MyTestException {}
-class OtherTestException extends Exception {}
-
-class TestOfExceptionExpectation extends UnitTestCase {
-
- function testExceptionClassAsStringWillMatchExceptionsRootedOnThatClass() {
- $expectation = new ExceptionExpectation('MyTestException');
- $this->assertTrue($expectation->test(new MyTestException()));
- $this->assertTrue($expectation->test(new HigherTestException()));
- $this->assertFalse($expectation->test(new OtherTestException()));
- }
-
- function testMatchesClassAndMessageWhenExceptionExpected() {
- $expectation = new ExceptionExpectation(new MyTestException('Hello'));
- $this->assertTrue($expectation->test(new MyTestException('Hello')));
- $this->assertFalse($expectation->test(new HigherTestException('Hello')));
- $this->assertFalse($expectation->test(new OtherTestException('Hello')));
- $this->assertFalse($expectation->test(new MyTestException('Goodbye')));
- $this->assertFalse($expectation->test(new MyTestException()));
- }
-
- function testMessagelessExceptionMatchesOnlyOnClass() {
- $expectation = new ExceptionExpectation(new MyTestException());
- $this->assertTrue($expectation->test(new MyTestException()));
- $this->assertFalse($expectation->test(new HigherTestException()));
- }
-}
-
-class TestOfExceptionTrap extends UnitTestCase {
-
- function testNoExceptionsInQueueMeansNoTestMessages() {
- $test = new MockSimpleTestCase();
- $test->expectNever('assert');
- $queue = new SimpleExceptionTrap();
- $this->assertFalse($queue->isExpected($test, new Exception()));
- }
-
- function testMatchingExceptionGivesTrue() {
- $expectation = new MockSimpleExpectation();
- $expectation->setReturnValue('test', true);
- $test = new MockSimpleTestCase();
- $test->setReturnValue('assert', true);
- $queue = new SimpleExceptionTrap();
- $queue->expectException($expectation, 'message');
- $this->assertTrue($queue->isExpected($test, new Exception()));
- }
-
- function testMatchingExceptionTriggersAssertion() {
- $test = new MockSimpleTestCase();
- $test->expectOnce('assert', array(
- '*',
- new ExceptionExpectation(new Exception()),
- 'message'));
- $queue = new SimpleExceptionTrap();
- $queue->expectException(new ExceptionExpectation(new Exception()), 'message');
- $queue->isExpected($test, new Exception());
- }
-}
-
-class TestOfCatchingExceptions extends UnitTestCase {
-
- function testCanCatchAnyExpectedException() {
- $this->expectException();
- throw new Exception();
- }
-
- function testCanMatchExceptionByClass() {
- $this->expectException('MyTestException');
- throw new HigherTestException();
- }
-
- function testCanMatchExceptionExactly() {
- $this->expectException(new Exception('Ouch'));
- throw new Exception('Ouch');
- }
-
- function testLastListedExceptionIsTheOneThatCounts() {
- $this->expectException('OtherTestException');
- $this->expectException('MyTestException');
- throw new HigherTestException();
- }
-}
-
-class TestOfIgnoringExceptions extends UnitTestCase {
-
- function testCanIgnoreAnyException() {
- $this->ignoreException();
- throw new Exception();
- }
-
- function testCanIgnoreSpecificException() {
- $this->ignoreException('MyTestException');
- throw new MyTestException();
- }
-
- function testCanIgnoreExceptionExactly() {
- $this->ignoreException(new Exception('Ouch'));
- throw new Exception('Ouch');
- }
-
- function testIgnoredExceptionsDoNotMaskExpectedExceptions() {
- $this->ignoreException('Exception');
- $this->expectException('MyTestException');
- throw new MyTestException();
- }
-
- function testCanIgnoreMultipleExceptions() {
- $this->ignoreException('MyTestException');
- $this->ignoreException('OtherTestException');
- throw new OtherTestException();
- }
-}
-
-class TestOfCallingTearDownAfterExceptions extends UnitTestCase {
- private $debri = 0;
-
- function tearDown() {
- $this->debri--;
- }
-
- function testLeaveSomeDebri() {
- $this->debri++;
- $this->expectException();
- throw new Exception(__FUNCTION__);
- }
-
- function testDebriWasRemovedOnce() {
- $this->assertEqual($this->debri, 0);
- }
-}
-
-class TestOfExceptionThrownInSetUpDoesNotRunTestBody extends UnitTestCase {
-
- function setUp() {
- $this->expectException();
- throw new Exception();
- }
-
- function testShouldNotBeRun() {
- $this->fail('This test body should not be run');
- }
-
- function testShouldNotBeRunEither() {
- $this->fail('This test body should not be run either');
- }
-}
-
-class TestOfExpectExceptionWithSetUp extends UnitTestCase {
-
- function setUp() {
- $this->expectException();
- }
-
- function testThisExceptionShouldBeCaught() {
- throw new Exception();
- }
-
- function testJustThrowingMyTestException() {
- throw new MyTestException();
- }
-}
-
-class TestOfThrowingExceptionsInTearDown extends UnitTestCase {
-
- function tearDown() {
- throw new Exception();
- }
-
- function testDoesntFatal() {
- $this->expectException();
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/expectation_test.php b/3rdparty/simpletest/test/expectation_test.php
deleted file mode 100644
index 31fbe65e683..00000000000
--- a/3rdparty/simpletest/test/expectation_test.php
+++ /dev/null
@@ -1,317 +0,0 @@
-<?php
-// $Id: expectation_test.php 2009 2011-04-28 08:57:25Z pp11 $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../expectation.php');
-
-class TestOfEquality extends UnitTestCase {
-
- function testBoolean() {
- $is_true = new EqualExpectation(true);
- $this->assertTrue($is_true->test(true));
- $this->assertFalse($is_true->test(false));
- }
-
- function testStringMatch() {
- $hello = new EqualExpectation("Hello");
- $this->assertTrue($hello->test("Hello"));
- $this->assertFalse($hello->test("Goodbye"));
- }
-
- function testInteger() {
- $fifteen = new EqualExpectation(15);
- $this->assertTrue($fifteen->test(15));
- $this->assertFalse($fifteen->test(14));
- }
-
- function testFloat() {
- $pi = new EqualExpectation(3.14);
- $this->assertTrue($pi->test(3.14));
- $this->assertFalse($pi->test(3.15));
- }
-
- function testArray() {
- $colours = new EqualExpectation(array("r", "g", "b"));
- $this->assertTrue($colours->test(array("r", "g", "b")));
- $this->assertFalse($colours->test(array("g", "b", "r")));
- }
-
- function testHash() {
- $is_blue = new EqualExpectation(array("r" => 0, "g" => 0, "b" => 255));
- $this->assertTrue($is_blue->test(array("r" => 0, "g" => 0, "b" => 255)));
- $this->assertFalse($is_blue->test(array("r" => 0, "g" => 255, "b" => 0)));
- }
-
- function testHashWithOutOfOrderKeysShouldStillMatch() {
- $any_order = new EqualExpectation(array('a' => 1, 'b' => 2));
- $this->assertTrue($any_order->test(array('b' => 2, 'a' => 1)));
- }
-}
-
-class TestOfWithin extends UnitTestCase {
-
- function testWithinFloatingPointMargin() {
- $within = new WithinMarginExpectation(1.0, 0.2);
- $this->assertFalse($within->test(0.7));
- $this->assertTrue($within->test(0.8));
- $this->assertTrue($within->test(0.9));
- $this->assertTrue($within->test(1.1));
- $this->assertTrue($within->test(1.2));
- $this->assertFalse($within->test(1.3));
- }
-
- function testOutsideFloatingPointMargin() {
- $within = new OutsideMarginExpectation(1.0, 0.2);
- $this->assertTrue($within->test(0.7));
- $this->assertFalse($within->test(0.8));
- $this->assertFalse($within->test(1.2));
- $this->assertTrue($within->test(1.3));
- }
-}
-
-class TestOfInequality extends UnitTestCase {
-
- function testStringMismatch() {
- $not_hello = new NotEqualExpectation("Hello");
- $this->assertTrue($not_hello->test("Goodbye"));
- $this->assertFalse($not_hello->test("Hello"));
- }
-}
-
-class RecursiveNasty {
- private $me;
-
- function RecursiveNasty() {
- $this->me = $this;
- }
-}
-
-class OpaqueContainer {
- private $stuff;
- private $value;
-
- public function __construct($value) {
- $this->value = $value;
- }
-}
-
-class DerivedOpaqueContainer extends OpaqueContainer {
- // Deliberately have a variable whose name with the same suffix as a later
- // variable
- private $new_value = 1;
-
- // Deliberately obscures the variable of the same name in the base
- // class.
- private $value;
-
- public function __construct($value, $base_value) {
- parent::__construct($base_value);
- $this->value = $value;
- }
-}
-
-class TestOfIdentity extends UnitTestCase {
-
- function testType() {
- $string = new IdenticalExpectation("37");
- $this->assertTrue($string->test("37"));
- $this->assertFalse($string->test(37));
- $this->assertFalse($string->test("38"));
- }
-
- function _testNastyPhp5Bug() {
- $this->assertFalse(new RecursiveNasty() != new RecursiveNasty());
- }
-
- function _testReallyHorribleRecursiveStructure() {
- $hopeful = new IdenticalExpectation(new RecursiveNasty());
- $this->assertTrue($hopeful->test(new RecursiveNasty()));
- }
-
- function testCanComparePrivateMembers() {
- $expectFive = new IdenticalExpectation(new OpaqueContainer(5));
- $this->assertTrue($expectFive->test(new OpaqueContainer(5)));
- $this->assertFalse($expectFive->test(new OpaqueContainer(6)));
- }
-
- function testCanComparePrivateMembersOfObjectsInArrays() {
- $expectFive = new IdenticalExpectation(array(new OpaqueContainer(5)));
- $this->assertTrue($expectFive->test(array(new OpaqueContainer(5))));
- $this->assertFalse($expectFive->test(array(new OpaqueContainer(6))));
- }
-
- function testCanComparePrivateMembersOfObjectsWherePrivateMemberOfBaseClassIsObscured() {
- $expectFive = new IdenticalExpectation(array(new DerivedOpaqueContainer(1,2)));
- $this->assertTrue($expectFive->test(array(new DerivedOpaqueContainer(1,2))));
- $this->assertFalse($expectFive->test(array(new DerivedOpaqueContainer(0,2))));
- $this->assertFalse($expectFive->test(array(new DerivedOpaqueContainer(0,9))));
- $this->assertFalse($expectFive->test(array(new DerivedOpaqueContainer(1,0))));
- }
-}
-
-class TransparentContainer {
- public $value;
-
- public function __construct($value) {
- $this->value = $value;
- }
-}
-
-class TestOfMemberComparison extends UnitTestCase {
-
- function testMemberExpectationCanMatchPublicMember() {
- $expect_five = new MemberExpectation('value', 5);
- $this->assertTrue($expect_five->test(new TransparentContainer(5)));
- $this->assertFalse($expect_five->test(new TransparentContainer(8)));
- }
-
- function testMemberExpectationCanMatchPrivateMember() {
- $expect_five = new MemberExpectation('value', 5);
- $this->assertTrue($expect_five->test(new OpaqueContainer(5)));
- $this->assertFalse($expect_five->test(new OpaqueContainer(8)));
- }
-
- function testMemberExpectationCanMatchPrivateMemberObscuredByDerivedClass() {
- $expect_five = new MemberExpectation('value', 5);
- $this->assertTrue($expect_five->test(new DerivedOpaqueContainer(5,8)));
- $this->assertTrue($expect_five->test(new DerivedOpaqueContainer(5,5)));
- $this->assertFalse($expect_five->test(new DerivedOpaqueContainer(8,8)));
- $this->assertFalse($expect_five->test(new DerivedOpaqueContainer(8,5)));
- }
-
-}
-
-class DummyReferencedObject{}
-
-class TestOfReference extends UnitTestCase {
-
- function testReference() {
- $foo = "foo";
- $ref = &$foo;
- $not_ref = $foo;
- $bar = "bar";
-
- $expect = new ReferenceExpectation($foo);
- $this->assertTrue($expect->test($ref));
- $this->assertFalse($expect->test($not_ref));
- $this->assertFalse($expect->test($bar));
- }
-}
-
-class TestOfNonIdentity extends UnitTestCase {
-
- function testType() {
- $string = new NotIdenticalExpectation("37");
- $this->assertTrue($string->test("38"));
- $this->assertTrue($string->test(37));
- $this->assertFalse($string->test("37"));
- }
-}
-
-class TestOfPatterns extends UnitTestCase {
-
- function testWanted() {
- $pattern = new PatternExpectation('/hello/i');
- $this->assertTrue($pattern->test("Hello world"));
- $this->assertFalse($pattern->test("Goodbye world"));
- }
-
- function testUnwanted() {
- $pattern = new NoPatternExpectation('/hello/i');
- $this->assertFalse($pattern->test("Hello world"));
- $this->assertTrue($pattern->test("Goodbye world"));
- }
-}
-
-class ExpectedMethodTarget {
- function hasThisMethod() {}
-}
-
-class TestOfMethodExistence extends UnitTestCase {
-
- function testHasMethod() {
- $instance = new ExpectedMethodTarget();
- $expectation = new MethodExistsExpectation('hasThisMethod');
- $this->assertTrue($expectation->test($instance));
- $expectation = new MethodExistsExpectation('doesNotHaveThisMethod');
- $this->assertFalse($expectation->test($instance));
- }
-}
-
-class TestOfIsA extends UnitTestCase {
-
- function testString() {
- $expectation = new IsAExpectation('string');
- $this->assertTrue($expectation->test('Hello'));
- $this->assertFalse($expectation->test(5));
- }
-
- function testBoolean() {
- $expectation = new IsAExpectation('boolean');
- $this->assertTrue($expectation->test(true));
- $this->assertFalse($expectation->test(1));
- }
-
- function testBool() {
- $expectation = new IsAExpectation('bool');
- $this->assertTrue($expectation->test(true));
- $this->assertFalse($expectation->test(1));
- }
-
- function testDouble() {
- $expectation = new IsAExpectation('double');
- $this->assertTrue($expectation->test(5.0));
- $this->assertFalse($expectation->test(5));
- }
-
- function testFloat() {
- $expectation = new IsAExpectation('float');
- $this->assertTrue($expectation->test(5.0));
- $this->assertFalse($expectation->test(5));
- }
-
- function testReal() {
- $expectation = new IsAExpectation('real');
- $this->assertTrue($expectation->test(5.0));
- $this->assertFalse($expectation->test(5));
- }
-
- function testInteger() {
- $expectation = new IsAExpectation('integer');
- $this->assertTrue($expectation->test(5));
- $this->assertFalse($expectation->test(5.0));
- }
-
- function testInt() {
- $expectation = new IsAExpectation('int');
- $this->assertTrue($expectation->test(5));
- $this->assertFalse($expectation->test(5.0));
- }
-
- function testScalar() {
- $expectation = new IsAExpectation('scalar');
- $this->assertTrue($expectation->test(5));
- $this->assertFalse($expectation->test(array(5)));
- }
-
- function testNumeric() {
- $expectation = new IsAExpectation('numeric');
- $this->assertTrue($expectation->test(5));
- $this->assertFalse($expectation->test('string'));
- }
-
- function testNull() {
- $expectation = new IsAExpectation('null');
- $this->assertTrue($expectation->test(null));
- $this->assertFalse($expectation->test('string'));
- }
-}
-
-class TestOfNotA extends UnitTestCase {
-
- function testString() {
- $expectation = new NotAExpectation('string');
- $this->assertFalse($expectation->test('Hello'));
- $this->assertTrue($expectation->test(5));
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/form_test.php b/3rdparty/simpletest/test/form_test.php
deleted file mode 100644
index 70a18f2b3a0..00000000000
--- a/3rdparty/simpletest/test/form_test.php
+++ /dev/null
@@ -1,344 +0,0 @@
-<?php
-// $Id: form_test.php 1996 2010-07-27 09:11:59Z pp11 $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../url.php');
-require_once(dirname(__FILE__) . '/../form.php');
-require_once(dirname(__FILE__) . '/../page.php');
-require_once(dirname(__FILE__) . '/../encoding.php');
-Mock::generate('SimplePage');
-
-class TestOfForm extends UnitTestCase {
-
- function page($url, $action = false) {
- $page = new MockSimplePage();
- $page->returns('getUrl', new SimpleUrl($url));
- $page->returns('expandUrl', new SimpleUrl($url));
- return $page;
- }
-
- function testFormAttributes() {
- $tag = new SimpleFormTag(array('method' => 'GET', 'action' => 'here.php', 'id' => '33'));
- $form = new SimpleForm($tag, $this->page('http://host/a/index.html'));
- $this->assertEqual($form->getMethod(), 'get');
- $this->assertIdentical($form->getId(), '33');
- $this->assertNull($form->getValue(new SimpleByName('a')));
- }
-
- function testAction() {
- $page = new MockSimplePage();
- $page->expectOnce('expandUrl', array(new SimpleUrl('here.php')));
- $page->setReturnValue('expandUrl', new SimpleUrl('http://host/here.php'));
- $tag = new SimpleFormTag(array('method' => 'GET', 'action' => 'here.php'));
- $form = new SimpleForm($tag, $page);
- $this->assertEqual($form->getAction(), new SimpleUrl('http://host/here.php'));
- }
-
- function testEmptyAction() {
- $tag = new SimpleFormTag(array('method' => 'GET', 'action' => '', 'id' => '33'));
- $form = new SimpleForm($tag, $this->page('http://host/a/index.html'));
- $this->assertEqual(
- $form->getAction(),
- new SimpleUrl('http://host/a/index.html'));
- }
-
- function testMissingAction() {
- $tag = new SimpleFormTag(array('method' => 'GET'));
- $form = new SimpleForm($tag, $this->page('http://host/a/index.html'));
- $this->assertEqual(
- $form->getAction(),
- new SimpleUrl('http://host/a/index.html'));
- }
-
- function testRootAction() {
- $page = new MockSimplePage();
- $page->expectOnce('expandUrl', array(new SimpleUrl('/')));
- $page->setReturnValue('expandUrl', new SimpleUrl('http://host/'));
- $tag = new SimpleFormTag(array('method' => 'GET', 'action' => '/'));
- $form = new SimpleForm($tag, $page);
- $this->assertEqual(
- $form->getAction(),
- new SimpleUrl('http://host/'));
- }
-
- function testDefaultFrameTargetOnForm() {
- $page = new MockSimplePage();
- $page->expectOnce('expandUrl', array(new SimpleUrl('here.php')));
- $page->setReturnValue('expandUrl', new SimpleUrl('http://host/here.php'));
- $tag = new SimpleFormTag(array('method' => 'GET', 'action' => 'here.php'));
- $form = new SimpleForm($tag, $page);
- $form->setDefaultTarget('frame');
- $expected = new SimpleUrl('http://host/here.php');
- $expected->setTarget('frame');
- $this->assertEqual($form->getAction(), $expected);
- }
-
- function testTextWidget() {
- $form = new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host'));
- $form->addWidget(new SimpleTextTag(
- array('name' => 'me', 'type' => 'text', 'value' => 'Myself')));
- $this->assertIdentical($form->getValue(new SimpleByName('me')), 'Myself');
- $this->assertTrue($form->setField(new SimpleByName('me'), 'Not me'));
- $this->assertFalse($form->setField(new SimpleByName('not_present'), 'Not me'));
- $this->assertIdentical($form->getValue(new SimpleByName('me')), 'Not me');
- $this->assertNull($form->getValue(new SimpleByName('not_present')));
- }
-
- function testTextWidgetById() {
- $form = new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host'));
- $form->addWidget(new SimpleTextTag(
- array('name' => 'me', 'type' => 'text', 'value' => 'Myself', 'id' => 50)));
- $this->assertIdentical($form->getValue(new SimpleById(50)), 'Myself');
- $this->assertTrue($form->setField(new SimpleById(50), 'Not me'));
- $this->assertIdentical($form->getValue(new SimpleById(50)), 'Not me');
- }
-
- function testTextWidgetByLabel() {
- $form = new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host'));
- $widget = new SimpleTextTag(array('name' => 'me', 'type' => 'text', 'value' => 'a'));
- $form->addWidget($widget);
- $widget->setLabel('thing');
- $this->assertIdentical($form->getValue(new SimpleByLabel('thing')), 'a');
- $this->assertTrue($form->setField(new SimpleByLabel('thing'), 'b'));
- $this->assertIdentical($form->getValue(new SimpleByLabel('thing')), 'b');
- }
-
- function testSubmitEmpty() {
- $form = new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host'));
- $this->assertIdentical($form->submit(), new SimpleGetEncoding());
- }
-
- function testSubmitButton() {
- $form = new SimpleForm(new SimpleFormTag(array()), $this->page('http://host'));
- $form->addWidget(new SimpleSubmitTag(
- array('type' => 'submit', 'name' => 'go', 'value' => 'Go!', 'id' => '9')));
- $this->assertTrue($form->hasSubmit(new SimpleByName('go')));
- $this->assertEqual($form->getValue(new SimpleByName('go')), 'Go!');
- $this->assertEqual($form->getValue(new SimpleById(9)), 'Go!');
- $this->assertEqual(
- $form->submitButton(new SimpleByName('go')),
- new SimpleGetEncoding(array('go' => 'Go!')));
- $this->assertEqual(
- $form->submitButton(new SimpleByLabel('Go!')),
- new SimpleGetEncoding(array('go' => 'Go!')));
- $this->assertEqual(
- $form->submitButton(new SimpleById(9)),
- new SimpleGetEncoding(array('go' => 'Go!')));
- }
-
- function testSubmitWithAdditionalParameters() {
- $form = new SimpleForm(new SimpleFormTag(array()), $this->page('http://host'));
- $form->addWidget(new SimpleSubmitTag(
- array('type' => 'submit', 'name' => 'go', 'value' => 'Go!')));
- $this->assertEqual(
- $form->submitButton(new SimpleByLabel('Go!'), array('a' => 'A')),
- new SimpleGetEncoding(array('go' => 'Go!', 'a' => 'A')));
- }
-
- function testSubmitButtonWithLabelOfSubmit() {
- $form = new SimpleForm(new SimpleFormTag(array()), $this->page('http://host'));
- $form->addWidget(new SimpleSubmitTag(
- array('type' => 'submit', 'name' => 'test', 'value' => 'Submit')));
- $this->assertEqual(
- $form->submitButton(new SimpleByName('test')),
- new SimpleGetEncoding(array('test' => 'Submit')));
- $this->assertEqual(
- $form->submitButton(new SimpleByLabel('Submit')),
- new SimpleGetEncoding(array('test' => 'Submit')));
- }
-
- function testSubmitButtonWithWhitespacePaddedLabelOfSubmit() {
- $form = new SimpleForm(new SimpleFormTag(array()), $this->page('http://host'));
- $form->addWidget(new SimpleSubmitTag(
- array('type' => 'submit', 'name' => 'test', 'value' => ' Submit ')));
- $this->assertEqual(
- $form->submitButton(new SimpleByLabel('Submit')),
- new SimpleGetEncoding(array('test' => ' Submit ')));
- }
-
- function testImageSubmitButton() {
- $form = new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host'));
- $form->addWidget(new SimpleImageSubmitTag(array(
- 'type' => 'image',
- 'src' => 'source.jpg',
- 'name' => 'go',
- 'alt' => 'Go!',
- 'id' => '9')));
- $this->assertTrue($form->hasImage(new SimpleByLabel('Go!')));
- $this->assertEqual(
- $form->submitImage(new SimpleByLabel('Go!'), 100, 101),
- new SimpleGetEncoding(array('go.x' => 100, 'go.y' => 101)));
- $this->assertTrue($form->hasImage(new SimpleByName('go')));
- $this->assertEqual(
- $form->submitImage(new SimpleByName('go'), 100, 101),
- new SimpleGetEncoding(array('go.x' => 100, 'go.y' => 101)));
- $this->assertTrue($form->hasImage(new SimpleById(9)));
- $this->assertEqual(
- $form->submitImage(new SimpleById(9), 100, 101),
- new SimpleGetEncoding(array('go.x' => 100, 'go.y' => 101)));
- }
-
- function testImageSubmitButtonWithAdditionalData() {
- $form = new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host'));
- $form->addWidget(new SimpleImageSubmitTag(array(
- 'type' => 'image',
- 'src' => 'source.jpg',
- 'name' => 'go',
- 'alt' => 'Go!')));
- $this->assertEqual(
- $form->submitImage(new SimpleByLabel('Go!'), 100, 101, array('a' => 'A')),
- new SimpleGetEncoding(array('go.x' => 100, 'go.y' => 101, 'a' => 'A')));
- }
-
- function testButtonTag() {
- $form = new SimpleForm(new SimpleFormTag(array()), $this->page('http://host'));
- $widget = new SimpleButtonTag(
- array('type' => 'submit', 'name' => 'go', 'value' => 'Go', 'id' => '9'));
- $widget->addContent('Go!');
- $form->addWidget($widget);
- $this->assertTrue($form->hasSubmit(new SimpleByName('go')));
- $this->assertTrue($form->hasSubmit(new SimpleByLabel('Go!')));
- $this->assertEqual(
- $form->submitButton(new SimpleByName('go')),
- new SimpleGetEncoding(array('go' => 'Go')));
- $this->assertEqual(
- $form->submitButton(new SimpleByLabel('Go!')),
- new SimpleGetEncoding(array('go' => 'Go')));
- $this->assertEqual(
- $form->submitButton(new SimpleById(9)),
- new SimpleGetEncoding(array('go' => 'Go')));
- }
-
- function testMultipleFieldsWithSameNameSubmitted() {
- $form = new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host'));
- $input = new SimpleTextTag(array('name' => 'elements[]', 'value' => '1'));
- $form->addWidget($input);
- $input = new SimpleTextTag(array('name' => 'elements[]', 'value' => '2'));
- $form->addWidget($input);
- $form->setField(new SimpleByLabelOrName('elements[]'), '3', 1);
- $form->setField(new SimpleByLabelOrName('elements[]'), '4', 2);
- $submit = $form->submit();
- $requests = $submit->getAll();
- $this->assertEqual(count($requests), 2);
- $this->assertIdentical($requests[0], new SimpleEncodedPair('elements[]', '3'));
- $this->assertIdentical($requests[1], new SimpleEncodedPair('elements[]', '4'));
- }
-
- function testSingleSelectFieldSubmitted() {
- $form = new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host'));
- $select = new SimpleSelectionTag(array('name' => 'a'));
- $select->addTag(new SimpleOptionTag(
- array('value' => 'aaa', 'selected' => '')));
- $form->addWidget($select);
- $this->assertIdentical(
- $form->submit(),
- new SimpleGetEncoding(array('a' => 'aaa')));
- }
-
- function testSingleSelectFieldSubmittedWithPost() {
- $form = new SimpleForm(new SimpleFormTag(array('method' => 'post')), $this->page('htp://host'));
- $select = new SimpleSelectionTag(array('name' => 'a'));
- $select->addTag(new SimpleOptionTag(
- array('value' => 'aaa', 'selected' => '')));
- $form->addWidget($select);
- $this->assertIdentical(
- $form->submit(),
- new SimplePostEncoding(array('a' => 'aaa')));
- }
-
- function testUnchecked() {
- $form = new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host'));
- $form->addWidget(new SimpleCheckboxTag(
- array('name' => 'me', 'type' => 'checkbox')));
- $this->assertIdentical($form->getValue(new SimpleByName('me')), false);
- $this->assertTrue($form->setField(new SimpleByName('me'), 'on'));
- $this->assertEqual($form->getValue(new SimpleByName('me')), 'on');
- $this->assertFalse($form->setField(new SimpleByName('me'), 'other'));
- $this->assertEqual($form->getValue(new SimpleByName('me')), 'on');
- }
-
- function testChecked() {
- $form = new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host'));
- $form->addWidget(new SimpleCheckboxTag(
- array('name' => 'me', 'value' => 'a', 'type' => 'checkbox', 'checked' => '')));
- $this->assertIdentical($form->getValue(new SimpleByName('me')), 'a');
- $this->assertTrue($form->setField(new SimpleByName('me'), 'a'));
- $this->assertEqual($form->getValue(new SimpleByName('me')), 'a');
- $this->assertTrue($form->setField(new SimpleByName('me'), false));
- $this->assertEqual($form->getValue(new SimpleByName('me')), false);
- }
-
- function testSingleUncheckedRadioButton() {
- $form = new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host'));
- $form->addWidget(new SimpleRadioButtonTag(
- array('name' => 'me', 'value' => 'a', 'type' => 'radio')));
- $this->assertIdentical($form->getValue(new SimpleByName('me')), false);
- $this->assertTrue($form->setField(new SimpleByName('me'), 'a'));
- $this->assertEqual($form->getValue(new SimpleByName('me')), 'a');
- }
-
- function testSingleCheckedRadioButton() {
- $form = new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host'));
- $form->addWidget(new SimpleRadioButtonTag(
- array('name' => 'me', 'value' => 'a', 'type' => 'radio', 'checked' => '')));
- $this->assertIdentical($form->getValue(new SimpleByName('me')), 'a');
- $this->assertFalse($form->setField(new SimpleByName('me'), 'other'));
- }
-
- function testUncheckedRadioButtons() {
- $form = new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host'));
- $form->addWidget(new SimpleRadioButtonTag(
- array('name' => 'me', 'value' => 'a', 'type' => 'radio')));
- $form->addWidget(new SimpleRadioButtonTag(
- array('name' => 'me', 'value' => 'b', 'type' => 'radio')));
- $this->assertIdentical($form->getValue(new SimpleByName('me')), false);
- $this->assertTrue($form->setField(new SimpleByName('me'), 'a'));
- $this->assertIdentical($form->getValue(new SimpleByName('me')), 'a');
- $this->assertTrue($form->setField(new SimpleByName('me'), 'b'));
- $this->assertIdentical($form->getValue(new SimpleByName('me')), 'b');
- $this->assertFalse($form->setField(new SimpleByName('me'), 'c'));
- $this->assertIdentical($form->getValue(new SimpleByName('me')), 'b');
- }
-
- function testCheckedRadioButtons() {
- $form = new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host'));
- $form->addWidget(new SimpleRadioButtonTag(
- array('name' => 'me', 'value' => 'a', 'type' => 'radio')));
- $form->addWidget(new SimpleRadioButtonTag(
- array('name' => 'me', 'value' => 'b', 'type' => 'radio', 'checked' => '')));
- $this->assertIdentical($form->getValue(new SimpleByName('me')), 'b');
- $this->assertTrue($form->setField(new SimpleByName('me'), 'a'));
- $this->assertIdentical($form->getValue(new SimpleByName('me')), 'a');
- }
-
- function testMultipleFieldsWithSameKey() {
- $form = new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host'));
- $form->addWidget(new SimpleCheckboxTag(
- array('name' => 'a', 'type' => 'checkbox', 'value' => 'me')));
- $form->addWidget(new SimpleCheckboxTag(
- array('name' => 'a', 'type' => 'checkbox', 'value' => 'you')));
- $this->assertIdentical($form->getValue(new SimpleByName('a')), false);
- $this->assertTrue($form->setField(new SimpleByName('a'), 'me'));
- $this->assertIdentical($form->getValue(new SimpleByName('a')), 'me');
- }
-
- function testRemoveGetParamsFromAction() {
- Mock::generatePartial('SimplePage', 'MockPartialSimplePage', array('getUrl'));
- $page = new MockPartialSimplePage();
- $page->returns('getUrl', new SimpleUrl('htp://host/'));
-
- # Keep GET params in "action", if the form has no widgets
- $form = new SimpleForm(new SimpleFormTag(array('action'=>'?test=1')), $page);
- $this->assertEqual($form->getAction()->asString(), 'htp://host/');
-
- $form = new SimpleForm(new SimpleFormTag(array('action'=>'?test=1')), $page);
- $form->addWidget(new SimpleTextTag(array('name' => 'me', 'type' => 'text', 'value' => 'a')));
- $this->assertEqual($form->getAction()->asString(), 'htp://host/');
-
- $form = new SimpleForm(new SimpleFormTag(array('action'=>'')), $page);
- $this->assertEqual($form->getAction()->asString(), 'htp://host/');
-
- $form = new SimpleForm(new SimpleFormTag(array('action'=>'?test=1', 'method'=>'post')), $page);
- $this->assertEqual($form->getAction()->asString(), 'htp://host/?test=1');
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/frames_test.php b/3rdparty/simpletest/test/frames_test.php
deleted file mode 100644
index 29309700e31..00000000000
--- a/3rdparty/simpletest/test/frames_test.php
+++ /dev/null
@@ -1,549 +0,0 @@
-<?php
-// $Id: frames_test.php 1899 2009-07-28 19:33:42Z lastcraft $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../tag.php');
-require_once(dirname(__FILE__) . '/../page.php');
-require_once(dirname(__FILE__) . '/../frames.php');
-Mock::generate('SimplePage');
-Mock::generate('SimpleForm');
-
-class TestOfFrameset extends UnitTestCase {
-
- function testTitleReadFromFramesetPage() {
- $page = new MockSimplePage();
- $page->setReturnValue('getTitle', 'This page');
- $frameset = new SimpleFrameset($page);
- $this->assertEqual($frameset->getTitle(), 'This page');
- }
-
- function TestHeadersReadFromFramesetByDefault() {
- $page = new MockSimplePage();
- $page->setReturnValue('getHeaders', 'Header: content');
- $page->setReturnValue('getMimeType', 'text/xml');
- $page->setReturnValue('getResponseCode', 401);
- $page->setReturnValue('getTransportError', 'Could not parse headers');
- $page->setReturnValue('getAuthentication', 'Basic');
- $page->setReturnValue('getRealm', 'Safe place');
-
- $frameset = new SimpleFrameset($page);
-
- $this->assertIdentical($frameset->getHeaders(), 'Header: content');
- $this->assertIdentical($frameset->getMimeType(), 'text/xml');
- $this->assertIdentical($frameset->getResponseCode(), 401);
- $this->assertIdentical($frameset->getTransportError(), 'Could not parse headers');
- $this->assertIdentical($frameset->getAuthentication(), 'Basic');
- $this->assertIdentical($frameset->getRealm(), 'Safe place');
- }
-
- function testEmptyFramesetHasNoContent() {
- $page = new MockSimplePage();
- $page->setReturnValue('getRaw', 'This content');
- $frameset = new SimpleFrameset($page);
- $this->assertEqual($frameset->getRaw(), '');
- }
-
- function testRawContentIsFromOnlyFrame() {
- $page = new MockSimplePage();
- $page->expectNever('getRaw');
-
- $frame = new MockSimplePage();
- $frame->setReturnValue('getRaw', 'Stuff');
-
- $frameset = new SimpleFrameset($page);
- $frameset->addFrame($frame);
- $this->assertEqual($frameset->getRaw(), 'Stuff');
- }
-
- function testRawContentIsFromAllFrames() {
- $page = new MockSimplePage();
- $page->expectNever('getRaw');
-
- $frame1 = new MockSimplePage();
- $frame1->setReturnValue('getRaw', 'Stuff1');
-
- $frame2 = new MockSimplePage();
- $frame2->setReturnValue('getRaw', 'Stuff2');
-
- $frameset = new SimpleFrameset($page);
- $frameset->addFrame($frame1);
- $frameset->addFrame($frame2);
- $this->assertEqual($frameset->getRaw(), 'Stuff1Stuff2');
- }
-
- function testTextContentIsFromOnlyFrame() {
- $page = new MockSimplePage();
- $page->expectNever('getText');
-
- $frame = new MockSimplePage();
- $frame->setReturnValue('getText', 'Stuff');
-
- $frameset = new SimpleFrameset($page);
- $frameset->addFrame($frame);
- $this->assertEqual($frameset->getText(), 'Stuff');
- }
-
- function testTextContentIsFromAllFrames() {
- $page = new MockSimplePage();
- $page->expectNever('getText');
-
- $frame1 = new MockSimplePage();
- $frame1->setReturnValue('getText', 'Stuff1');
-
- $frame2 = new MockSimplePage();
- $frame2->setReturnValue('getText', 'Stuff2');
-
- $frameset = new SimpleFrameset($page);
- $frameset->addFrame($frame1);
- $frameset->addFrame($frame2);
- $this->assertEqual($frameset->getText(), 'Stuff1 Stuff2');
- }
-
- function testFieldFoundIsFirstInFramelist() {
- $frame1 = new MockSimplePage();
- $frame1->setReturnValue('getField', null);
- $frame1->expectOnce('getField', array(new SimpleByName('a')));
-
- $frame2 = new MockSimplePage();
- $frame2->setReturnValue('getField', 'A');
- $frame2->expectOnce('getField', array(new SimpleByName('a')));
-
- $frame3 = new MockSimplePage();
- $frame3->expectNever('getField');
-
- $page = new MockSimplePage();
- $frameset = new SimpleFrameset($page);
- $frameset->addFrame($frame1);
- $frameset->addFrame($frame2);
- $frameset->addFrame($frame3);
- $this->assertIdentical($frameset->getField(new SimpleByName('a')), 'A');
- }
-
- function testFrameReplacementByIndex() {
- $page = new MockSimplePage();
- $page->expectNever('getRaw');
-
- $frame1 = new MockSimplePage();
- $frame1->setReturnValue('getRaw', 'Stuff1');
-
- $frame2 = new MockSimplePage();
- $frame2->setReturnValue('getRaw', 'Stuff2');
-
- $frameset = new SimpleFrameset($page);
- $frameset->addFrame($frame1);
- $frameset->setFrame(array(1), $frame2);
- $this->assertEqual($frameset->getRaw(), 'Stuff2');
- }
-
- function testFrameReplacementByName() {
- $page = new MockSimplePage();
- $page->expectNever('getRaw');
-
- $frame1 = new MockSimplePage();
- $frame1->setReturnValue('getRaw', 'Stuff1');
-
- $frame2 = new MockSimplePage();
- $frame2->setReturnValue('getRaw', 'Stuff2');
-
- $frameset = new SimpleFrameset($page);
- $frameset->addFrame($frame1, 'a');
- $frameset->setFrame(array('a'), $frame2);
- $this->assertEqual($frameset->getRaw(), 'Stuff2');
- }
-}
-
-class TestOfFrameNavigation extends UnitTestCase {
-
- function testStartsWithoutFrameFocus() {
- $page = new MockSimplePage();
- $frameset = new SimpleFrameset($page);
- $frameset->addFrame(new MockSimplePage());
- $this->assertFalse($frameset->getFrameFocus());
- }
-
- function testCanFocusOnSingleFrame() {
- $page = new MockSimplePage();
- $page->expectNever('getRaw');
-
- $frame = new MockSimplePage();
- $frame->setReturnValue('getFrameFocus', array());
- $frame->setReturnValue('getRaw', 'Stuff');
-
- $frameset = new SimpleFrameset($page);
- $frameset->addFrame($frame);
-
- $this->assertFalse($frameset->setFrameFocusByIndex(0));
- $this->assertTrue($frameset->setFrameFocusByIndex(1));
- $this->assertEqual($frameset->getRaw(), 'Stuff');
- $this->assertFalse($frameset->setFrameFocusByIndex(2));
- $this->assertIdentical($frameset->getFrameFocus(), array(1));
- }
-
- function testContentComesFromFrameInFocus() {
- $page = new MockSimplePage();
-
- $frame1 = new MockSimplePage();
- $frame1->setReturnValue('getRaw', 'Stuff1');
- $frame1->setReturnValue('getFrameFocus', array());
-
- $frame2 = new MockSimplePage();
- $frame2->setReturnValue('getRaw', 'Stuff2');
- $frame2->setReturnValue('getFrameFocus', array());
-
- $frameset = new SimpleFrameset($page);
- $frameset->addFrame($frame1);
- $frameset->addFrame($frame2);
-
- $this->assertTrue($frameset->setFrameFocusByIndex(1));
- $this->assertEqual($frameset->getFrameFocus(), array(1));
- $this->assertEqual($frameset->getRaw(), 'Stuff1');
-
- $this->assertTrue($frameset->setFrameFocusByIndex(2));
- $this->assertEqual($frameset->getFrameFocus(), array(2));
- $this->assertEqual($frameset->getRaw(), 'Stuff2');
-
- $this->assertFalse($frameset->setFrameFocusByIndex(3));
- $this->assertEqual($frameset->getFrameFocus(), array(2));
-
- $frameset->clearFrameFocus();
- $this->assertEqual($frameset->getRaw(), 'Stuff1Stuff2');
- }
-
- function testCanFocusByName() {
- $page = new MockSimplePage();
-
- $frame1 = new MockSimplePage();
- $frame1->setReturnValue('getRaw', 'Stuff1');
- $frame1->setReturnValue('getFrameFocus', array());
-
- $frame2 = new MockSimplePage();
- $frame2->setReturnValue('getRaw', 'Stuff2');
- $frame2->setReturnValue('getFrameFocus', array());
-
- $frameset = new SimpleFrameset($page);
- $frameset->addFrame($frame1, 'A');
- $frameset->addFrame($frame2, 'B');
-
- $this->assertTrue($frameset->setFrameFocus('A'));
- $this->assertEqual($frameset->getFrameFocus(), array('A'));
- $this->assertEqual($frameset->getRaw(), 'Stuff1');
-
- $this->assertTrue($frameset->setFrameFocusByIndex(2));
- $this->assertEqual($frameset->getFrameFocus(), array('B'));
- $this->assertEqual($frameset->getRaw(), 'Stuff2');
-
- $this->assertFalse($frameset->setFrameFocus('z'));
-
- $frameset->clearFrameFocus();
- $this->assertEqual($frameset->getRaw(), 'Stuff1Stuff2');
- }
-}
-
-class TestOfFramesetPageInterface extends UnitTestCase {
- private $page_interface;
- private $frameset_interface;
-
- function __construct() {
- parent::__construct();
- $this->page_interface = $this->getPageMethods();
- $this->frameset_interface = $this->getFramesetMethods();
- }
-
- function assertListInAnyOrder($list, $expected) {
- sort($list);
- sort($expected);
- $this->assertEqual($list, $expected);
- }
-
- private function getPageMethods() {
- $methods = array();
- foreach (get_class_methods('SimplePage') as $method) {
- if (strtolower($method) == strtolower('SimplePage')) {
- continue;
- }
- if (strtolower($method) == strtolower('getFrameset')) {
- continue;
- }
- if (strncmp($method, '_', 1) == 0) {
- continue;
- }
- if (in_array($method, array('setTitle', 'setBase', 'setForms', 'normalise', 'setFrames', 'addLink'))) {
- continue;
- }
- $methods[] = $method;
- }
- return $methods;
- }
-
- private function getFramesetMethods() {
- $methods = array();
- foreach (get_class_methods('SimpleFrameset') as $method) {
- if (strtolower($method) == strtolower('SimpleFrameset')) {
- continue;
- }
- if (strncmp($method, '_', 1) == 0) {
- continue;
- }
- if (strncmp($method, 'add', 3) == 0) {
- continue;
- }
- $methods[] = $method;
- }
- return $methods;
- }
-
- function testFramsetHasPageInterface() {
- $difference = array();
- foreach ($this->page_interface as $method) {
- if (! in_array($method, $this->frameset_interface)) {
- $this->fail("No [$method] in Frameset class");
- return;
- }
- }
- $this->pass('Frameset covers Page interface');
- }
-
- function testHeadersReadFromFrameIfInFocus() {
- $frame = new MockSimplePage();
- $frame->setReturnValue('getUrl', new SimpleUrl('http://localhost/stuff'));
-
- $frame->setReturnValue('getRequest', 'POST stuff');
- $frame->setReturnValue('getMethod', 'POST');
- $frame->setReturnValue('getRequestData', array('a' => 'A'));
- $frame->setReturnValue('getHeaders', 'Header: content');
- $frame->setReturnValue('getMimeType', 'text/xml');
- $frame->setReturnValue('getResponseCode', 401);
- $frame->setReturnValue('getTransportError', 'Could not parse headers');
- $frame->setReturnValue('getAuthentication', 'Basic');
- $frame->setReturnValue('getRealm', 'Safe place');
-
- $frameset = new SimpleFrameset(new MockSimplePage());
- $frameset->addFrame($frame);
- $frameset->setFrameFocusByIndex(1);
-
- $url = new SimpleUrl('http://localhost/stuff');
- $url->setTarget(1);
- $this->assertIdentical($frameset->getUrl(), $url);
-
- $this->assertIdentical($frameset->getRequest(), 'POST stuff');
- $this->assertIdentical($frameset->getMethod(), 'POST');
- $this->assertIdentical($frameset->getRequestData(), array('a' => 'A'));
- $this->assertIdentical($frameset->getHeaders(), 'Header: content');
- $this->assertIdentical($frameset->getMimeType(), 'text/xml');
- $this->assertIdentical($frameset->getResponseCode(), 401);
- $this->assertIdentical($frameset->getTransportError(), 'Could not parse headers');
- $this->assertIdentical($frameset->getAuthentication(), 'Basic');
- $this->assertIdentical($frameset->getRealm(), 'Safe place');
- }
-
- function testUrlsComeFromBothFrames() {
- $page = new MockSimplePage();
- $page->expectNever('getUrls');
-
- $frame1 = new MockSimplePage();
- $frame1->setReturnValue(
- 'getUrls',
- array('http://www.lastcraft.com/', 'http://myserver/'));
-
- $frame2 = new MockSimplePage();
- $frame2->setReturnValue(
- 'getUrls',
- array('http://www.lastcraft.com/', 'http://test/'));
-
- $frameset = new SimpleFrameset($page);
- $frameset->addFrame($frame1);
- $frameset->addFrame($frame2);
- $this->assertListInAnyOrder(
- $frameset->getUrls(),
- array('http://www.lastcraft.com/', 'http://myserver/', 'http://test/'));
- }
-
- function testLabelledUrlsComeFromBothFrames() {
- $frame1 = new MockSimplePage();
- $frame1->setReturnValue(
- 'getUrlsByLabel',
- array(new SimpleUrl('goodbye.php')),
- array('a'));
-
- $frame2 = new MockSimplePage();
- $frame2->setReturnValue(
- 'getUrlsByLabel',
- array(new SimpleUrl('hello.php')),
- array('a'));
-
- $frameset = new SimpleFrameset(new MockSimplePage());
- $frameset->addFrame($frame1);
- $frameset->addFrame($frame2, 'Two');
-
- $expected1 = new SimpleUrl('goodbye.php');
- $expected1->setTarget(1);
- $expected2 = new SimpleUrl('hello.php');
- $expected2->setTarget('Two');
- $this->assertEqual(
- $frameset->getUrlsByLabel('a'),
- array($expected1, $expected2));
- }
-
- function testUrlByIdComesFromFirstFrameToRespond() {
- $frame1 = new MockSimplePage();
- $frame1->setReturnValue('getUrlById', new SimpleUrl('four.php'), array(4));
- $frame1->setReturnValue('getUrlById', false, array(5));
-
- $frame2 = new MockSimplePage();
- $frame2->setReturnValue('getUrlById', false, array(4));
- $frame2->setReturnValue('getUrlById', new SimpleUrl('five.php'), array(5));
-
- $frameset = new SimpleFrameset(new MockSimplePage());
- $frameset->addFrame($frame1);
- $frameset->addFrame($frame2);
-
- $four = new SimpleUrl('four.php');
- $four->setTarget(1);
- $this->assertEqual($frameset->getUrlById(4), $four);
- $five = new SimpleUrl('five.php');
- $five->setTarget(2);
- $this->assertEqual($frameset->getUrlById(5), $five);
- }
-
- function testReadUrlsFromFrameInFocus() {
- $frame1 = new MockSimplePage();
- $frame1->setReturnValue('getUrls', array('a'));
- $frame1->setReturnValue('getUrlsByLabel', array(new SimpleUrl('l')));
- $frame1->setReturnValue('getUrlById', new SimpleUrl('i'));
-
- $frame2 = new MockSimplePage();
- $frame2->expectNever('getUrls');
- $frame2->expectNever('getUrlsByLabel');
- $frame2->expectNever('getUrlById');
-
- $frameset = new SimpleFrameset(new MockSimplePage());
- $frameset->addFrame($frame1, 'A');
- $frameset->addFrame($frame2, 'B');
- $frameset->setFrameFocus('A');
-
- $this->assertIdentical($frameset->getUrls(), array('a'));
- $expected = new SimpleUrl('l');
- $expected->setTarget('A');
- $this->assertIdentical($frameset->getUrlsByLabel('label'), array($expected));
- $expected = new SimpleUrl('i');
- $expected->setTarget('A');
- $this->assertIdentical($frameset->getUrlById(99), $expected);
- }
-
- function testReadFrameTaggedUrlsFromFrameInFocus() {
- $frame = new MockSimplePage();
-
- $by_label = new SimpleUrl('l');
- $by_label->setTarget('L');
- $frame->setReturnValue('getUrlsByLabel', array($by_label));
-
- $by_id = new SimpleUrl('i');
- $by_id->setTarget('I');
- $frame->setReturnValue('getUrlById', $by_id);
-
- $frameset = new SimpleFrameset(new MockSimplePage());
- $frameset->addFrame($frame, 'A');
- $frameset->setFrameFocus('A');
-
- $this->assertIdentical($frameset->getUrlsByLabel('label'), array($by_label));
- $this->assertIdentical($frameset->getUrlById(99), $by_id);
- }
-
- function testFindingFormsById() {
- $frame = new MockSimplePage();
- $form = new MockSimpleForm();
- $frame->returns('getFormById', $form, array('a'));
-
- $frameset = new SimpleFrameset(new MockSimplePage());
- $frameset->addFrame(new MockSimplePage(), 'A');
- $frameset->addFrame($frame, 'B');
- $this->assertSame($frameset->getFormById('a'), $form);
-
- $frameset->setFrameFocus('A');
- $this->assertNull($frameset->getFormById('a'));
-
- $frameset->setFrameFocus('B');
- $this->assertSame($frameset->getFormById('a'), $form);
- }
-
- function testFindingFormsBySubmit() {
- $frame = new MockSimplePage();
- $form = new MockSimpleForm();
- $frame->returns(
- 'getFormBySubmit',
- $form,
- array(new SimpleByLabel('a')));
-
- $frameset = new SimpleFrameset(new MockSimplePage());
- $frameset->addFrame(new MockSimplePage(), 'A');
- $frameset->addFrame($frame, 'B');
- $this->assertSame($frameset->getFormBySubmit(new SimpleByLabel('a')), $form);
-
- $frameset->setFrameFocus('A');
- $this->assertNull($frameset->getFormBySubmit(new SimpleByLabel('a')));
-
- $frameset->setFrameFocus('B');
- $this->assertSame($frameset->getFormBySubmit(new SimpleByLabel('a')), $form);
- }
-
- function testFindingFormsByImage() {
- $frame = new MockSimplePage();
- $form = new MockSimpleForm();
- $frame->returns(
- 'getFormByImage',
- $form,
- array(new SimpleByLabel('a')));
-
- $frameset = new SimpleFrameset(new MockSimplePage());
- $frameset->addFrame(new MockSimplePage(), 'A');
- $frameset->addFrame($frame, 'B');
- $this->assertSame($frameset->getFormByImage(new SimpleByLabel('a')), $form);
-
- $frameset->setFrameFocus('A');
- $this->assertNull($frameset->getFormByImage(new SimpleByLabel('a')));
-
- $frameset->setFrameFocus('B');
- $this->assertSame($frameset->getFormByImage(new SimpleByLabel('a')), $form);
- }
-
- function testSettingAllFrameFieldsWhenNoFrameFocus() {
- $frame1 = new MockSimplePage();
- $frame1->expectOnce('setField', array(new SimpleById(22), 'A'));
-
- $frame2 = new MockSimplePage();
- $frame2->expectOnce('setField', array(new SimpleById(22), 'A'));
-
- $frameset = new SimpleFrameset(new MockSimplePage());
- $frameset->addFrame($frame1, 'A');
- $frameset->addFrame($frame2, 'B');
- $frameset->setField(new SimpleById(22), 'A');
- }
-
- function testOnlySettingFieldFromFocusedFrame() {
- $frame1 = new MockSimplePage();
- $frame1->expectOnce('setField', array(new SimpleByLabelOrName('a'), 'A'));
-
- $frame2 = new MockSimplePage();
- $frame2->expectNever('setField');
-
- $frameset = new SimpleFrameset(new MockSimplePage());
- $frameset->addFrame($frame1, 'A');
- $frameset->addFrame($frame2, 'B');
- $frameset->setFrameFocus('A');
- $frameset->setField(new SimpleByLabelOrName('a'), 'A');
- }
-
- function testOnlyGettingFieldFromFocusedFrame() {
- $frame1 = new MockSimplePage();
- $frame1->setReturnValue('getField', 'f', array(new SimpleByName('a')));
-
- $frame2 = new MockSimplePage();
- $frame2->expectNever('getField');
-
- $frameset = new SimpleFrameset(new MockSimplePage());
- $frameset->addFrame($frame1, 'A');
- $frameset->addFrame($frame2, 'B');
- $frameset->setFrameFocus('A');
- $this->assertIdentical($frameset->getField(new SimpleByName('a')), 'f');
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/http_test.php b/3rdparty/simpletest/test/http_test.php
deleted file mode 100644
index bd3fdd0d028..00000000000
--- a/3rdparty/simpletest/test/http_test.php
+++ /dev/null
@@ -1,492 +0,0 @@
-<?php
-// $Id: http_test.php 1964 2009-10-13 15:27:31Z maetl_ $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../encoding.php');
-require_once(dirname(__FILE__) . '/../http.php');
-require_once(dirname(__FILE__) . '/../socket.php');
-require_once(dirname(__FILE__) . '/../cookies.php');
-Mock::generate('SimpleSocket');
-Mock::generate('SimpleCookieJar');
-Mock::generate('SimpleRoute');
-Mock::generatePartial(
- 'SimpleRoute',
- 'PartialSimpleRoute',
-array('createSocket'));
-Mock::generatePartial(
- 'SimpleProxyRoute',
- 'PartialSimpleProxyRoute',
-array('createSocket'));
-
-class TestOfDirectRoute extends UnitTestCase {
-
- function testDefaultGetRequest() {
- $socket = new MockSimpleSocket();
- $socket->expectAt(0, 'write', array("GET /here.html HTTP/1.0\r\n"));
- $socket->expectAt(1, 'write', array("Host: a.valid.host\r\n"));
- $socket->expectAt(2, 'write', array("Connection: close\r\n"));
- $socket->expectCallCount('write', 3);
- $route = new PartialSimpleRoute();
- $route->setReturnReference('createSocket', $socket);
- $route->__construct(new SimpleUrl('http://a.valid.host/here.html'));
- $this->assertSame($route->createConnection('GET', 15), $socket);
- }
-
- function testDefaultPostRequest() {
- $socket = new MockSimpleSocket();
- $socket->expectAt(0, 'write', array("POST /here.html HTTP/1.0\r\n"));
- $socket->expectAt(1, 'write', array("Host: a.valid.host\r\n"));
- $socket->expectAt(2, 'write', array("Connection: close\r\n"));
- $socket->expectCallCount('write', 3);
- $route = new PartialSimpleRoute();
- $route->setReturnReference('createSocket', $socket);
- $route->__construct(new SimpleUrl('http://a.valid.host/here.html'));
-
- $route->createConnection('POST', 15);
- }
-
- function testDefaultDeleteRequest() {
- $socket = new MockSimpleSocket();
- $socket->expectAt(0, 'write', array("DELETE /here.html HTTP/1.0\r\n"));
- $socket->expectAt(1, 'write', array("Host: a.valid.host\r\n"));
- $socket->expectAt(2, 'write', array("Connection: close\r\n"));
- $socket->expectCallCount('write', 3);
- $route = new PartialSimpleRoute();
- $route->setReturnReference('createSocket', $socket);
- $route->__construct(new SimpleUrl('http://a.valid.host/here.html'));
- $this->assertSame($route->createConnection('DELETE', 15), $socket);
- }
-
- function testDefaultHeadRequest() {
- $socket = new MockSimpleSocket();
- $socket->expectAt(0, 'write', array("HEAD /here.html HTTP/1.0\r\n"));
- $socket->expectAt(1, 'write', array("Host: a.valid.host\r\n"));
- $socket->expectAt(2, 'write', array("Connection: close\r\n"));
- $socket->expectCallCount('write', 3);
- $route = new PartialSimpleRoute();
- $route->setReturnReference('createSocket', $socket);
- $route->__construct(new SimpleUrl('http://a.valid.host/here.html'));
- $this->assertSame($route->createConnection('HEAD', 15), $socket);
- }
-
- function testGetWithPort() {
- $socket = new MockSimpleSocket();
- $socket->expectAt(0, 'write', array("GET /here.html HTTP/1.0\r\n"));
- $socket->expectAt(1, 'write', array("Host: a.valid.host:81\r\n"));
- $socket->expectAt(2, 'write', array("Connection: close\r\n"));
- $socket->expectCallCount('write', 3);
-
- $route = new PartialSimpleRoute();
- $route->setReturnReference('createSocket', $socket);
- $route->__construct(new SimpleUrl('http://a.valid.host:81/here.html'));
-
- $route->createConnection('GET', 15);
- }
-
- function testGetWithParameters() {
- $socket = new MockSimpleSocket();
- $socket->expectAt(0, 'write', array("GET /here.html?a=1&b=2 HTTP/1.0\r\n"));
- $socket->expectAt(1, 'write', array("Host: a.valid.host\r\n"));
- $socket->expectAt(2, 'write', array("Connection: close\r\n"));
- $socket->expectCallCount('write', 3);
-
- $route = new PartialSimpleRoute();
- $route->setReturnReference('createSocket', $socket);
- $route->__construct(new SimpleUrl('http://a.valid.host/here.html?a=1&b=2'));
-
- $route->createConnection('GET', 15);
- }
-}
-
-class TestOfProxyRoute extends UnitTestCase {
-
- function testDefaultGet() {
- $socket = new MockSimpleSocket();
- $socket->expectAt(0, 'write', array("GET http://a.valid.host/here.html HTTP/1.0\r\n"));
- $socket->expectAt(1, 'write', array("Host: my-proxy:8080\r\n"));
- $socket->expectAt(2, 'write', array("Connection: close\r\n"));
- $socket->expectCallCount('write', 3);
-
- $route = new PartialSimpleProxyRoute();
- $route->setReturnReference('createSocket', $socket);
- $route->__construct(
- new SimpleUrl('http://a.valid.host/here.html'),
- new SimpleUrl('http://my-proxy'));
- $route->createConnection('GET', 15);
- }
-
- function testDefaultPost() {
- $socket = new MockSimpleSocket();
- $socket->expectAt(0, 'write', array("POST http://a.valid.host/here.html HTTP/1.0\r\n"));
- $socket->expectAt(1, 'write', array("Host: my-proxy:8080\r\n"));
- $socket->expectAt(2, 'write', array("Connection: close\r\n"));
- $socket->expectCallCount('write', 3);
-
- $route = new PartialSimpleProxyRoute();
- $route->setReturnReference('createSocket', $socket);
- $route->__construct(
- new SimpleUrl('http://a.valid.host/here.html'),
- new SimpleUrl('http://my-proxy'));
- $route->createConnection('POST', 15);
- }
-
- function testGetWithPort() {
- $socket = new MockSimpleSocket();
- $socket->expectAt(0, 'write', array("GET http://a.valid.host:81/here.html HTTP/1.0\r\n"));
- $socket->expectAt(1, 'write', array("Host: my-proxy:8081\r\n"));
- $socket->expectAt(2, 'write', array("Connection: close\r\n"));
- $socket->expectCallCount('write', 3);
-
- $route = new PartialSimpleProxyRoute();
- $route->setReturnReference('createSocket', $socket);
- $route->__construct(
- new SimpleUrl('http://a.valid.host:81/here.html'),
- new SimpleUrl('http://my-proxy:8081'));
- $route->createConnection('GET', 15);
- }
-
- function testGetWithParameters() {
- $socket = new MockSimpleSocket();
- $socket->expectAt(0, 'write', array("GET http://a.valid.host/here.html?a=1&b=2 HTTP/1.0\r\n"));
- $socket->expectAt(1, 'write', array("Host: my-proxy:8080\r\n"));
- $socket->expectAt(2, 'write', array("Connection: close\r\n"));
- $socket->expectCallCount('write', 3);
-
- $route = new PartialSimpleProxyRoute();
- $route->setReturnReference('createSocket', $socket);
- $route->__construct(
- new SimpleUrl('http://a.valid.host/here.html?a=1&b=2'),
- new SimpleUrl('http://my-proxy'));
- $route->createConnection('GET', 15);
- }
-
- function testGetWithAuthentication() {
- $encoded = base64_encode('Me:Secret');
-
- $socket = new MockSimpleSocket();
- $socket->expectAt(0, 'write', array("GET http://a.valid.host/here.html HTTP/1.0\r\n"));
- $socket->expectAt(1, 'write', array("Host: my-proxy:8080\r\n"));
- $socket->expectAt(2, 'write', array("Proxy-Authorization: Basic $encoded\r\n"));
- $socket->expectAt(3, 'write', array("Connection: close\r\n"));
- $socket->expectCallCount('write', 4);
-
- $route = new PartialSimpleProxyRoute();
- $route->setReturnReference('createSocket', $socket);
- $route->__construct(
- new SimpleUrl('http://a.valid.host/here.html'),
- new SimpleUrl('http://my-proxy'),
- 'Me',
- 'Secret');
- $route->createConnection('GET', 15);
- }
-}
-
-class TestOfHttpRequest extends UnitTestCase {
-
- function testReadingBadConnection() {
- $socket = new MockSimpleSocket();
- $route = new MockSimpleRoute();
- $route->setReturnReference('createConnection', $socket);
- $request = new SimpleHttpRequest($route, new SimpleGetEncoding());
- $reponse = $request->fetch(15);
- $this->assertTrue($reponse->isError());
- }
-
- function testReadingGoodConnection() {
- $socket = new MockSimpleSocket();
- $socket->expectOnce('write', array("\r\n"));
-
- $route = new MockSimpleRoute();
- $route->setReturnReference('createConnection', $socket);
- $route->expect('createConnection', array('GET', 15));
-
- $request = new SimpleHttpRequest($route, new SimpleGetEncoding());
- $this->assertIsA($request->fetch(15), 'SimpleHttpResponse');
- }
-
- function testWritingAdditionalHeaders() {
- $socket = new MockSimpleSocket();
- $socket->expectAt(0, 'write', array("My: stuff\r\n"));
- $socket->expectAt(1, 'write', array("\r\n"));
- $socket->expectCallCount('write', 2);
-
- $route = new MockSimpleRoute();
- $route->setReturnReference('createConnection', $socket);
-
- $request = new SimpleHttpRequest($route, new SimpleGetEncoding());
- $request->addHeaderLine('My: stuff');
- $request->fetch(15);
- }
-
- function testCookieWriting() {
- $socket = new MockSimpleSocket();
- $socket->expectAt(0, 'write', array("Cookie: a=A\r\n"));
- $socket->expectAt(1, 'write', array("\r\n"));
- $socket->expectCallCount('write', 2);
-
- $route = new MockSimpleRoute();
- $route->setReturnReference('createConnection', $socket);
-
- $jar = new SimpleCookieJar();
- $jar->setCookie('a', 'A');
-
- $request = new SimpleHttpRequest($route, new SimpleGetEncoding());
- $request->readCookiesFromJar($jar, new SimpleUrl('/'));
- $this->assertIsA($request->fetch(15), 'SimpleHttpResponse');
- }
-
- function testMultipleCookieWriting() {
- $socket = new MockSimpleSocket();
- $socket->expectAt(0, 'write', array("Cookie: a=A;b=B\r\n"));
-
- $route = new MockSimpleRoute();
- $route->setReturnReference('createConnection', $socket);
-
- $jar = new SimpleCookieJar();
- $jar->setCookie('a', 'A');
- $jar->setCookie('b', 'B');
-
- $request = new SimpleHttpRequest($route, new SimpleGetEncoding());
- $request->readCookiesFromJar($jar, new SimpleUrl('/'));
- $request->fetch(15);
- }
-
- function testReadingDeleteConnection() {
- $socket = new MockSimpleSocket();
-
- $route = new MockSimpleRoute();
- $route->setReturnReference('createConnection', $socket);
- $route->expect('createConnection', array('DELETE', 15));
-
- $request = new SimpleHttpRequest($route, new SimpleDeleteEncoding());
- $this->assertIsA($request->fetch(15), 'SimpleHttpResponse');
- }
-}
-
-class TestOfHttpPostRequest extends UnitTestCase {
-
- function testReadingBadConnectionCausesErrorBecauseOfDeadSocket() {
- $socket = new MockSimpleSocket();
- $route = new MockSimpleRoute();
- $route->setReturnReference('createConnection', $socket);
- $request = new SimpleHttpRequest($route, new SimplePostEncoding());
- $reponse = $request->fetch(15);
- $this->assertTrue($reponse->isError());
- }
-
- function testReadingGoodConnection() {
- $socket = new MockSimpleSocket();
- $socket->expectAt(0, 'write', array("Content-Length: 0\r\n"));
- $socket->expectAt(1, 'write', array("Content-Type: application/x-www-form-urlencoded\r\n"));
- $socket->expectAt(2, 'write', array("\r\n"));
- $socket->expectAt(3, 'write', array(""));
-
- $route = new MockSimpleRoute();
- $route->setReturnReference('createConnection', $socket);
- $route->expect('createConnection', array('POST', 15));
-
- $request = new SimpleHttpRequest($route, new SimplePostEncoding());
- $this->assertIsA($request->fetch(15), 'SimpleHttpResponse');
- }
-
- function testContentHeadersCalculatedWithUrlEncodedParams() {
- $socket = new MockSimpleSocket();
- $socket->expectAt(0, 'write', array("Content-Length: 3\r\n"));
- $socket->expectAt(1, 'write', array("Content-Type: application/x-www-form-urlencoded\r\n"));
- $socket->expectAt(2, 'write', array("\r\n"));
- $socket->expectAt(3, 'write', array("a=A"));
-
- $route = new MockSimpleRoute();
- $route->setReturnReference('createConnection', $socket);
- $route->expect('createConnection', array('POST', 15));
-
- $request = new SimpleHttpRequest(
- $route,
- new SimplePostEncoding(array('a' => 'A')));
- $this->assertIsA($request->fetch(15), 'SimpleHttpResponse');
- }
-
- function testContentHeadersCalculatedWithRawEntityBody() {
- $socket = new MockSimpleSocket();
- $socket->expectAt(0, 'write', array("Content-Length: 8\r\n"));
- $socket->expectAt(1, 'write', array("Content-Type: text/plain\r\n"));
- $socket->expectAt(2, 'write', array("\r\n"));
- $socket->expectAt(3, 'write', array("raw body"));
-
- $route = new MockSimpleRoute();
- $route->setReturnReference('createConnection', $socket);
- $route->expect('createConnection', array('POST', 15));
-
- $request = new SimpleHttpRequest(
- $route,
- new SimplePostEncoding('raw body'));
- $this->assertIsA($request->fetch(15), 'SimpleHttpResponse');
- }
-
- function testContentHeadersCalculatedWithXmlEntityBody() {
- $socket = new MockSimpleSocket();
- $socket->expectAt(0, 'write', array("Content-Length: 27\r\n"));
- $socket->expectAt(1, 'write', array("Content-Type: text/xml\r\n"));
- $socket->expectAt(2, 'write', array("\r\n"));
- $socket->expectAt(3, 'write', array("<a><b>one</b><c>two</c></a>"));
-
- $route = new MockSimpleRoute();
- $route->setReturnReference('createConnection', $socket);
- $route->expect('createConnection', array('POST', 15));
-
- $request = new SimpleHttpRequest(
- $route,
- new SimplePostEncoding('<a><b>one</b><c>two</c></a>', 'text/xml'));
- $this->assertIsA($request->fetch(15), 'SimpleHttpResponse');
- }
-}
-
-class TestOfHttpHeaders extends UnitTestCase {
-
- function testParseBasicHeaders() {
- $headers = new SimpleHttpHeaders(
- "HTTP/1.1 200 OK\r\n" .
- "Date: Mon, 18 Nov 2002 15:50:29 GMT\r\n" .
- "Content-Type: text/plain\r\n" .
- "Server: Apache/1.3.24 (Win32) PHP/4.2.3\r\n" .
- "Connection: close");
- $this->assertIdentical($headers->getHttpVersion(), "1.1");
- $this->assertIdentical($headers->getResponseCode(), 200);
- $this->assertEqual($headers->getMimeType(), "text/plain");
- }
-
- function testNonStandardResponseHeader() {
- $headers = new SimpleHttpHeaders(
- "HTTP/1.1 302 (HTTP-Version SP Status-Code CRLF)\r\n" .
- "Connection: close");
- $this->assertIdentical($headers->getResponseCode(), 302);
- }
-
- function testCanParseMultipleCookies() {
- $jar = new MockSimpleCookieJar();
- $jar->expectAt(0, 'setCookie', array('a', 'aaa', 'host', '/here/', 'Wed, 25 Dec 2002 04:24:20 GMT'));
- $jar->expectAt(1, 'setCookie', array('b', 'bbb', 'host', '/', false));
-
- $headers = new SimpleHttpHeaders(
- "HTTP/1.1 200 OK\r\n" .
- "Date: Mon, 18 Nov 2002 15:50:29 GMT\r\n" .
- "Content-Type: text/plain\r\n" .
- "Server: Apache/1.3.24 (Win32) PHP/4.2.3\r\n" .
- "Set-Cookie: a=aaa; expires=Wed, 25-Dec-02 04:24:20 GMT; path=/here/\r\n" .
- "Set-Cookie: b=bbb\r\n" .
- "Connection: close");
- $headers->writeCookiesToJar($jar, new SimpleUrl('http://host'));
- }
-
- function testCanRecogniseRedirect() {
- $headers = new SimpleHttpHeaders("HTTP/1.1 301 OK\r\n" .
- "Content-Type: text/plain\r\n" .
- "Content-Length: 0\r\n" .
- "Location: http://www.somewhere-else.com/\r\n" .
- "Connection: close");
- $this->assertIdentical($headers->getResponseCode(), 301);
- $this->assertEqual($headers->getLocation(), "http://www.somewhere-else.com/");
- $this->assertTrue($headers->isRedirect());
- }
-
- function testCanParseChallenge() {
- $headers = new SimpleHttpHeaders("HTTP/1.1 401 Authorization required\r\n" .
- "Content-Type: text/plain\r\n" .
- "Connection: close\r\n" .
- "WWW-Authenticate: Basic realm=\"Somewhere\"");
- $this->assertEqual($headers->getAuthentication(), 'Basic');
- $this->assertEqual($headers->getRealm(), 'Somewhere');
- $this->assertTrue($headers->isChallenge());
- }
-}
-
-class TestOfHttpResponse extends UnitTestCase {
-
- function testBadRequest() {
- $socket = new MockSimpleSocket();
- $socket->setReturnValue('getSent', '');
-
- $response = new SimpleHttpResponse($socket, new SimpleUrl('here'), new SimpleGetEncoding());
- $this->assertTrue($response->isError());
- $this->assertPattern('/Nothing fetched/', $response->getError());
- $this->assertIdentical($response->getContent(), false);
- $this->assertIdentical($response->getSent(), '');
- }
-
- function testBadSocketDuringResponse() {
- $socket = new MockSimpleSocket();
- $socket->setReturnValueAt(0, "read", "HTTP/1.1 200 OK\r\n");
- $socket->setReturnValueAt(1, "read", "Date: Mon, 18 Nov 2002 15:50:29 GMT\r\n");
- $socket->setReturnValue("read", "");
- $socket->setReturnValue('getSent', 'HTTP/1.1 ...');
-
- $response = new SimpleHttpResponse($socket, new SimpleUrl('here'), new SimpleGetEncoding());
- $this->assertTrue($response->isError());
- $this->assertEqual($response->getContent(), '');
- $this->assertEqual($response->getSent(), 'HTTP/1.1 ...');
- }
-
- function testIncompleteHeader() {
- $socket = new MockSimpleSocket();
- $socket->setReturnValueAt(0, "read", "HTTP/1.1 200 OK\r\n");
- $socket->setReturnValueAt(1, "read", "Date: Mon, 18 Nov 2002 15:50:29 GMT\r\n");
- $socket->setReturnValueAt(2, "read", "Content-Type: text/plain\r\n");
- $socket->setReturnValue("read", "");
-
- $response = new SimpleHttpResponse($socket, new SimpleUrl('here'), new SimpleGetEncoding());
- $this->assertTrue($response->isError());
- $this->assertEqual($response->getContent(), "");
- }
-
- function testParseOfResponseHeadersWhenChunked() {
- $socket = new MockSimpleSocket();
- $socket->setReturnValueAt(0, "read", "HTTP/1.1 200 OK\r\nDate: Mon, 18 Nov 2002 15:50:29 GMT\r\n");
- $socket->setReturnValueAt(1, "read", "Content-Type: text/plain\r\n");
- $socket->setReturnValueAt(2, "read", "Server: Apache/1.3.24 (Win32) PHP/4.2.3\r\nConne");
- $socket->setReturnValueAt(3, "read", "ction: close\r\n\r\nthis is a test file\n");
- $socket->setReturnValueAt(4, "read", "with two lines in it\n");
- $socket->setReturnValue("read", "");
-
- $response = new SimpleHttpResponse($socket, new SimpleUrl('here'), new SimpleGetEncoding());
- $this->assertFalse($response->isError());
- $this->assertEqual(
- $response->getContent(),
- "this is a test file\nwith two lines in it\n");
- $headers = $response->getHeaders();
- $this->assertIdentical($headers->getHttpVersion(), "1.1");
- $this->assertIdentical($headers->getResponseCode(), 200);
- $this->assertEqual($headers->getMimeType(), "text/plain");
- $this->assertFalse($headers->isRedirect());
- $this->assertFalse($headers->getLocation());
- }
-
- function testRedirect() {
- $socket = new MockSimpleSocket();
- $socket->setReturnValueAt(0, "read", "HTTP/1.1 301 OK\r\n");
- $socket->setReturnValueAt(1, "read", "Content-Type: text/plain\r\n");
- $socket->setReturnValueAt(2, "read", "Location: http://www.somewhere-else.com/\r\n");
- $socket->setReturnValueAt(3, "read", "Connection: close\r\n");
- $socket->setReturnValueAt(4, "read", "\r\n");
- $socket->setReturnValue("read", "");
-
- $response = new SimpleHttpResponse($socket, new SimpleUrl('here'), new SimpleGetEncoding());
- $headers = $response->getHeaders();
- $this->assertTrue($headers->isRedirect());
- $this->assertEqual($headers->getLocation(), "http://www.somewhere-else.com/");
- }
-
- function testRedirectWithPort() {
- $socket = new MockSimpleSocket();
- $socket->setReturnValueAt(0, "read", "HTTP/1.1 301 OK\r\n");
- $socket->setReturnValueAt(1, "read", "Content-Type: text/plain\r\n");
- $socket->setReturnValueAt(2, "read", "Location: http://www.somewhere-else.com:80/\r\n");
- $socket->setReturnValueAt(3, "read", "Connection: close\r\n");
- $socket->setReturnValueAt(4, "read", "\r\n");
- $socket->setReturnValue("read", "");
-
- $response = new SimpleHttpResponse($socket, new SimpleUrl('here'), new SimpleGetEncoding());
- $headers = $response->getHeaders();
- $this->assertTrue($headers->isRedirect());
- $this->assertEqual($headers->getLocation(), "http://www.somewhere-else.com:80/");
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/interfaces_test.php b/3rdparty/simpletest/test/interfaces_test.php
deleted file mode 100644
index ab30fe47ff8..00000000000
--- a/3rdparty/simpletest/test/interfaces_test.php
+++ /dev/null
@@ -1,137 +0,0 @@
-<?php
-// $Id: interfaces_test.php 1981 2010-03-23 23:29:56Z lastcraft $
-require_once(dirname(__FILE__) . '/../autorun.php');
-if (function_exists('spl_classes')) {
- include(dirname(__FILE__) . '/support/spl_examples.php');
-}
-if (version_compare(PHP_VERSION, '5.1', '>=')) {
- include(dirname(__FILE__) . '/interfaces_test_php5_1.php');
-}
-
-interface DummyInterface {
- function aMethod();
- function anotherMethod($a);
- function &referenceMethod(&$a);
-}
-
-Mock::generate('DummyInterface');
-Mock::generatePartial('DummyInterface', 'PartialDummyInterface', array());
-
-class TestOfMockInterfaces extends UnitTestCase {
-
- function testCanMockAnInterface() {
- $mock = new MockDummyInterface();
- $this->assertIsA($mock, 'SimpleMock');
- $this->assertIsA($mock, 'MockDummyInterface');
- $this->assertTrue(method_exists($mock, 'aMethod'));
- $this->assertTrue(method_exists($mock, 'anotherMethod'));
- $this->assertNull($mock->aMethod());
- }
-
- function testMockedInterfaceExpectsParameters() {
- $mock = new MockDummyInterface();
- $this->expectError();
- $mock->anotherMethod();
- }
-
- function testCannotPartiallyMockAnInterface() {
- $this->assertFalse(class_exists('PartialDummyInterface'));
- }
-}
-
-class TestOfSpl extends UnitTestCase {
-
- function skip() {
- $this->skipUnless(function_exists('spl_classes'), 'No SPL module loaded');
- }
-
- function testCanMockAllSplClasses() {
- if (! function_exists('spl_classes')) {
- return;
- }
- foreach(spl_classes() as $class) {
- if ($class == 'SplHeap' or $class = 'SplFileObject') {
- continue;
- }
- if (version_compare(PHP_VERSION, '5.1', '<') &&
- $class == 'CachingIterator' ||
- $class == 'CachingRecursiveIterator' ||
- $class == 'FilterIterator' ||
- $class == 'LimitIterator' ||
- $class == 'ParentIterator') {
- // These iterators require an iterator be passed to them during
- // construction in PHP 5.0; there is no way for SimpleTest
- // to supply such an iterator, however, so support for it is
- // disabled.
- continue;
- }
- $mock_class = "Mock$class";
- Mock::generate($class);
- $this->assertIsA(new $mock_class(), $mock_class);
- }
- }
-
- function testExtensionOfCommonSplClasses() {
- Mock::generate('IteratorImplementation');
- $this->assertIsA(
- new IteratorImplementation(),
- 'IteratorImplementation');
- Mock::generate('IteratorAggregateImplementation');
- $this->assertIsA(
- new IteratorAggregateImplementation(),
- 'IteratorAggregateImplementation');
- }
-}
-
-class WithHint {
- function hinted(DummyInterface $object) { }
-}
-
-class ImplementsDummy implements DummyInterface {
- function aMethod() { }
- function anotherMethod($a) { }
- function &referenceMethod(&$a) { }
- function extraMethod($a = false) { }
-}
-Mock::generate('ImplementsDummy');
-
-class TestOfImplementations extends UnitTestCase {
-
- function testMockedInterfaceCanPassThroughTypeHint() {
- $mock = new MockDummyInterface();
- $hinter = new WithHint();
- $hinter->hinted($mock);
- }
-
- function testImplementedInterfacesAreCarried() {
- $mock = new MockImplementsDummy();
- $hinter = new WithHint();
- $hinter->hinted($mock);
- }
-
- function testNoSpuriousWarningsWhenSkippingDefaultedParameter() {
- $mock = new MockImplementsDummy();
- $mock->extraMethod();
- }
-}
-
-interface SampleInterfaceWithConstruct {
- function __construct($something);
-}
-
-class TestOfInterfaceMocksWithConstruct extends UnitTestCase {
- function TODO_testBasicConstructOfAnInterface() { // Fails in PHP 5.3dev
- Mock::generate('SampleInterfaceWithConstruct');
- }
-}
-
-interface SampleInterfaceWithClone {
- function __clone();
-}
-
-class TestOfSampleInterfaceWithClone extends UnitTestCase {
- function testCanMockWithoutErrors() {
- Mock::generate('SampleInterfaceWithClone');
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/interfaces_test_php5_1.php b/3rdparty/simpletest/test/interfaces_test_php5_1.php
deleted file mode 100644
index 3d154f99539..00000000000
--- a/3rdparty/simpletest/test/interfaces_test_php5_1.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<?php
-
-interface SampleInterfaceWithHintInSignature {
- function method(array $hinted);
-}
-
-class TestOfInterfaceMocksWithHintInSignature extends UnitTestCase {
- function testBasicConstructOfAnInterfaceWithHintInSignature() {
- Mock::generate('SampleInterfaceWithHintInSignature');
- $mock = new MockSampleInterfaceWithHintInSignature();
- $this->assertIsA($mock, 'SampleInterfaceWithHintInSignature');
- }
-}
-
diff --git a/3rdparty/simpletest/test/live_test.php b/3rdparty/simpletest/test/live_test.php
deleted file mode 100644
index 3fbb54499d3..00000000000
--- a/3rdparty/simpletest/test/live_test.php
+++ /dev/null
@@ -1,47 +0,0 @@
-<?php
-// $Id: live_test.php 1748 2008-04-14 01:50:41Z lastcraft $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../socket.php');
-require_once(dirname(__FILE__) . '/../http.php');
-require_once(dirname(__FILE__) . '/../compatibility.php');
-
-if (SimpleTest::getDefaultProxy()) {
- SimpleTest::ignore('LiveHttpTestCase');
-}
-
-class LiveHttpTestCase extends UnitTestCase {
-
- function testBadSocket() {
- $socket = new SimpleSocket('bad_url', 111, 5);
- $this->assertTrue($socket->isError());
- $this->assertPattern(
- '/Cannot open \\[bad_url:111\\] with \\[/',
- $socket->getError());
- $this->assertFalse($socket->isOpen());
- $this->assertFalse($socket->write('A message'));
- }
-
- function testSocketClosure() {
- $socket = new SimpleSocket('www.lastcraft.com', 80, 15, 8);
- $this->assertTrue($socket->isOpen());
- $this->assertTrue($socket->write("GET /test/network_confirm.php HTTP/1.0\r\n"));
- $socket->write("Host: www.lastcraft.com\r\n");
- $socket->write("Connection: close\r\n\r\n");
- $this->assertEqual($socket->read(), "HTTP/1.1");
- $socket->close();
- $this->assertIdentical($socket->read(), false);
- }
-
- function testRecordOfSentCharacters() {
- $socket = new SimpleSocket('www.lastcraft.com', 80, 15);
- $this->assertTrue($socket->write("GET /test/network_confirm.php HTTP/1.0\r\n"));
- $socket->write("Host: www.lastcraft.com\r\n");
- $socket->write("Connection: close\r\n\r\n");
- $socket->close();
- $this->assertEqual($socket->getSent(),
- "GET /test/network_confirm.php HTTP/1.0\r\n" .
- "Host: www.lastcraft.com\r\n" .
- "Connection: close\r\n\r\n");
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/mock_objects_test.php b/3rdparty/simpletest/test/mock_objects_test.php
deleted file mode 100644
index 7f3178995a7..00000000000
--- a/3rdparty/simpletest/test/mock_objects_test.php
+++ /dev/null
@@ -1,985 +0,0 @@
-<?php
-// $Id: mock_objects_test.php 1900 2009-07-29 11:44:37Z lastcraft $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../expectation.php');
-require_once(dirname(__FILE__) . '/../mock_objects.php');
-
-class TestOfAnythingExpectation extends UnitTestCase {
- function testSimpleInteger() {
- $expectation = new AnythingExpectation();
- $this->assertTrue($expectation->test(33));
- $this->assertTrue($expectation->test(false));
- $this->assertTrue($expectation->test(null));
- }
-}
-
-class TestOfParametersExpectation extends UnitTestCase {
-
- function testEmptyMatch() {
- $expectation = new ParametersExpectation(array());
- $this->assertTrue($expectation->test(array()));
- $this->assertFalse($expectation->test(array(33)));
- }
-
- function testSingleMatch() {
- $expectation = new ParametersExpectation(array(0));
- $this->assertFalse($expectation->test(array(1)));
- $this->assertTrue($expectation->test(array(0)));
- }
-
- function testAnyMatch() {
- $expectation = new ParametersExpectation(false);
- $this->assertTrue($expectation->test(array()));
- $this->assertTrue($expectation->test(array(1, 2)));
- }
-
- function testMissingParameter() {
- $expectation = new ParametersExpectation(array(0));
- $this->assertFalse($expectation->test(array()));
- }
-
- function testNullParameter() {
- $expectation = new ParametersExpectation(array(null));
- $this->assertTrue($expectation->test(array(null)));
- $this->assertFalse($expectation->test(array()));
- }
-
- function testAnythingExpectations() {
- $expectation = new ParametersExpectation(array(new AnythingExpectation()));
- $this->assertFalse($expectation->test(array()));
- $this->assertIdentical($expectation->test(array(null)), true);
- $this->assertIdentical($expectation->test(array(13)), true);
- }
-
- function testOtherExpectations() {
- $expectation = new ParametersExpectation(
- array(new PatternExpectation('/hello/i')));
- $this->assertFalse($expectation->test(array('Goodbye')));
- $this->assertTrue($expectation->test(array('hello')));
- $this->assertTrue($expectation->test(array('Hello')));
- }
-
- function testIdentityOnly() {
- $expectation = new ParametersExpectation(array("0"));
- $this->assertFalse($expectation->test(array(0)));
- $this->assertTrue($expectation->test(array("0")));
- }
-
- function testLongList() {
- $expectation = new ParametersExpectation(
- array("0", 0, new AnythingExpectation(), false));
- $this->assertTrue($expectation->test(array("0", 0, 37, false)));
- $this->assertFalse($expectation->test(array("0", 0, 37, true)));
- $this->assertFalse($expectation->test(array("0", 0, 37)));
- }
-}
-
-class TestOfSimpleSignatureMap extends UnitTestCase {
-
- function testEmpty() {
- $map = new SimpleSignatureMap();
- $this->assertFalse($map->isMatch("any", array()));
- $this->assertNull($map->findFirstAction("any", array()));
- }
-
- function testDifferentCallSignaturesCanHaveDifferentReferences() {
- $map = new SimpleSignatureMap();
- $fred = 'Fred';
- $jim = 'jim';
- $map->add(array(0), $fred);
- $map->add(array('0'), $jim);
- $this->assertSame($fred, $map->findFirstAction(array(0)));
- $this->assertSame($jim, $map->findFirstAction(array('0')));
- }
-
- function testWildcard() {
- $fred = 'Fred';
- $map = new SimpleSignatureMap();
- $map->add(array(new AnythingExpectation(), 1, 3), $fred);
- $this->assertTrue($map->isMatch(array(2, 1, 3)));
- $this->assertSame($map->findFirstAction(array(2, 1, 3)), $fred);
- }
-
- function testAllWildcard() {
- $fred = 'Fred';
- $map = new SimpleSignatureMap();
- $this->assertFalse($map->isMatch(array(2, 1, 3)));
- $map->add('', $fred);
- $this->assertTrue($map->isMatch(array(2, 1, 3)));
- $this->assertSame($map->findFirstAction(array(2, 1, 3)), $fred);
- }
-
- function testOrdering() {
- $map = new SimpleSignatureMap();
- $map->add(array(1, 2), new SimpleByValue("1, 2"));
- $map->add(array(1, 3), new SimpleByValue("1, 3"));
- $map->add(array(1), new SimpleByValue("1"));
- $map->add(array(1, 4), new SimpleByValue("1, 4"));
- $map->add(array(new AnythingExpectation()), new SimpleByValue("Any"));
- $map->add(array(2), new SimpleByValue("2"));
- $map->add("", new SimpleByValue("Default"));
- $map->add(array(), new SimpleByValue("None"));
- $this->assertEqual($map->findFirstAction(array(1, 2)), new SimpleByValue("1, 2"));
- $this->assertEqual($map->findFirstAction(array(1, 3)), new SimpleByValue("1, 3"));
- $this->assertEqual($map->findFirstAction(array(1, 4)), new SimpleByValue("1, 4"));
- $this->assertEqual($map->findFirstAction(array(1)), new SimpleByValue("1"));
- $this->assertEqual($map->findFirstAction(array(2)), new SimpleByValue("Any"));
- $this->assertEqual($map->findFirstAction(array(3)), new SimpleByValue("Any"));
- $this->assertEqual($map->findFirstAction(array()), new SimpleByValue("Default"));
- }
-}
-
-class TestOfCallSchedule extends UnitTestCase {
- function testCanBeSetToAlwaysReturnTheSameReference() {
- $a = 5;
- $schedule = new SimpleCallSchedule();
- $schedule->register('aMethod', false, new SimpleByReference($a));
- $this->assertReference($schedule->respond(0, 'aMethod', array()), $a);
- $this->assertReference($schedule->respond(1, 'aMethod', array()), $a);
- }
-
- function testSpecificSignaturesOverrideTheAlwaysCase() {
- $any = 'any';
- $one = 'two';
- $schedule = new SimpleCallSchedule();
- $schedule->register('aMethod', array(1), new SimpleByReference($one));
- $schedule->register('aMethod', false, new SimpleByReference($any));
- $this->assertReference($schedule->respond(0, 'aMethod', array(2)), $any);
- $this->assertReference($schedule->respond(0, 'aMethod', array(1)), $one);
- }
-
- function testReturnsCanBeSetOverTime() {
- $one = 'one';
- $two = 'two';
- $schedule = new SimpleCallSchedule();
- $schedule->registerAt(0, 'aMethod', false, new SimpleByReference($one));
- $schedule->registerAt(1, 'aMethod', false, new SimpleByReference($two));
- $this->assertReference($schedule->respond(0, 'aMethod', array()), $one);
- $this->assertReference($schedule->respond(1, 'aMethod', array()), $two);
- }
-
- function testReturnsOverTimecanBeAlteredByTheArguments() {
- $one = '1';
- $two = '2';
- $two_a = '2a';
- $schedule = new SimpleCallSchedule();
- $schedule->registerAt(0, 'aMethod', false, new SimpleByReference($one));
- $schedule->registerAt(1, 'aMethod', array('a'), new SimpleByReference($two_a));
- $schedule->registerAt(1, 'aMethod', false, new SimpleByReference($two));
- $this->assertReference($schedule->respond(0, 'aMethod', array()), $one);
- $this->assertReference($schedule->respond(1, 'aMethod', array()), $two);
- $this->assertReference($schedule->respond(1, 'aMethod', array('a')), $two_a);
- }
-
- function testCanReturnByValue() {
- $a = 5;
- $schedule = new SimpleCallSchedule();
- $schedule->register('aMethod', false, new SimpleByValue($a));
- $this->assertCopy($schedule->respond(0, 'aMethod', array()), $a);
- }
-
- function testCanThrowException() {
- if (version_compare(phpversion(), '5', '>=')) {
- $schedule = new SimpleCallSchedule();
- $schedule->register('aMethod', false, new SimpleThrower(new Exception('Ouch')));
- $this->expectException(new Exception('Ouch'));
- $schedule->respond(0, 'aMethod', array());
- }
- }
-
- function testCanEmitError() {
- $schedule = new SimpleCallSchedule();
- $schedule->register('aMethod', false, new SimpleErrorThrower('Ouch', E_USER_WARNING));
- $this->expectError('Ouch');
- $schedule->respond(0, 'aMethod', array());
- }
-}
-
-class Dummy {
- function Dummy() {
- }
-
- function aMethod() {
- return true;
- }
-
- function &aReferenceMethod() {
- return true;
- }
-
- function anotherMethod() {
- return true;
- }
-}
-Mock::generate('Dummy');
-Mock::generate('Dummy', 'AnotherMockDummy');
-Mock::generate('Dummy', 'MockDummyWithExtraMethods', array('extraMethod'));
-
-class TestOfMockGeneration extends UnitTestCase {
-
- function testCloning() {
- $mock = new MockDummy();
- $this->assertTrue(method_exists($mock, "aMethod"));
- $this->assertNull($mock->aMethod());
- }
-
- function testCloningWithExtraMethod() {
- $mock = new MockDummyWithExtraMethods();
- $this->assertTrue(method_exists($mock, "extraMethod"));
- }
-
- function testCloningWithChosenClassName() {
- $mock = new AnotherMockDummy();
- $this->assertTrue(method_exists($mock, "aMethod"));
- }
-}
-
-class TestOfMockReturns extends UnitTestCase {
-
- function testDefaultReturn() {
- $mock = new MockDummy();
- $mock->returnsByValue("aMethod", "aaa");
- $this->assertIdentical($mock->aMethod(), "aaa");
- $this->assertIdentical($mock->aMethod(), "aaa");
- }
-
- function testParameteredReturn() {
- $mock = new MockDummy();
- $mock->returnsByValue('aMethod', 'aaa', array(1, 2, 3));
- $this->assertNull($mock->aMethod());
- $this->assertIdentical($mock->aMethod(1, 2, 3), 'aaa');
- }
-
- function testSetReturnGivesObjectReference() {
- $mock = new MockDummy();
- $object = new Dummy();
- $mock->returns('aMethod', $object, array(1, 2, 3));
- $this->assertSame($mock->aMethod(1, 2, 3), $object);
- }
-
- function testSetReturnReferenceGivesOriginalReference() {
- $mock = new MockDummy();
- $object = 1;
- $mock->returnsByReference('aReferenceMethod', $object, array(1, 2, 3));
- $this->assertReference($mock->aReferenceMethod(1, 2, 3), $object);
- }
-
- function testReturnValueCanBeChosenJustByPatternMatchingArguments() {
- $mock = new MockDummy();
- $mock->returnsByValue(
- "aMethod",
- "aaa",
- array(new PatternExpectation('/hello/i')));
- $this->assertIdentical($mock->aMethod('Hello'), 'aaa');
- $this->assertNull($mock->aMethod('Goodbye'));
- }
-
- function testMultipleMethods() {
- $mock = new MockDummy();
- $mock->returnsByValue("aMethod", 100, array(1));
- $mock->returnsByValue("aMethod", 200, array(2));
- $mock->returnsByValue("anotherMethod", 10, array(1));
- $mock->returnsByValue("anotherMethod", 20, array(2));
- $this->assertIdentical($mock->aMethod(1), 100);
- $this->assertIdentical($mock->anotherMethod(1), 10);
- $this->assertIdentical($mock->aMethod(2), 200);
- $this->assertIdentical($mock->anotherMethod(2), 20);
- }
-
- function testReturnSequence() {
- $mock = new MockDummy();
- $mock->returnsByValueAt(0, "aMethod", "aaa");
- $mock->returnsByValueAt(1, "aMethod", "bbb");
- $mock->returnsByValueAt(3, "aMethod", "ddd");
- $this->assertIdentical($mock->aMethod(), "aaa");
- $this->assertIdentical($mock->aMethod(), "bbb");
- $this->assertNull($mock->aMethod());
- $this->assertIdentical($mock->aMethod(), "ddd");
- }
-
- function testSetReturnReferenceAtGivesOriginal() {
- $mock = new MockDummy();
- $object = 100;
- $mock->returnsByReferenceAt(1, "aReferenceMethod", $object);
- $this->assertNull($mock->aReferenceMethod());
- $this->assertReference($mock->aReferenceMethod(), $object);
- $this->assertNull($mock->aReferenceMethod());
- }
-
- function testReturnsAtGivesOriginalObjectHandle() {
- $mock = new MockDummy();
- $object = new Dummy();
- $mock->returnsAt(1, "aMethod", $object);
- $this->assertNull($mock->aMethod());
- $this->assertSame($mock->aMethod(), $object);
- $this->assertNull($mock->aMethod());
- }
-
- function testComplicatedReturnSequence() {
- $mock = new MockDummy();
- $object = new Dummy();
- $mock->returnsAt(1, "aMethod", "aaa", array("a"));
- $mock->returnsAt(1, "aMethod", "bbb");
- $mock->returnsAt(2, "aMethod", $object, array('*', 2));
- $mock->returnsAt(2, "aMethod", "value", array('*', 3));
- $mock->returns("aMethod", 3, array(3));
- $this->assertNull($mock->aMethod());
- $this->assertEqual($mock->aMethod("a"), "aaa");
- $this->assertSame($mock->aMethod(1, 2), $object);
- $this->assertEqual($mock->aMethod(3), 3);
- $this->assertNull($mock->aMethod());
- }
-
- function testMultipleMethodSequences() {
- $mock = new MockDummy();
- $mock->returnsByValueAt(0, "aMethod", "aaa");
- $mock->returnsByValueAt(1, "aMethod", "bbb");
- $mock->returnsByValueAt(0, "anotherMethod", "ccc");
- $mock->returnsByValueAt(1, "anotherMethod", "ddd");
- $this->assertIdentical($mock->aMethod(), "aaa");
- $this->assertIdentical($mock->anotherMethod(), "ccc");
- $this->assertIdentical($mock->aMethod(), "bbb");
- $this->assertIdentical($mock->anotherMethod(), "ddd");
- }
-
- function testSequenceFallback() {
- $mock = new MockDummy();
- $mock->returnsByValueAt(0, "aMethod", "aaa", array('a'));
- $mock->returnsByValueAt(1, "aMethod", "bbb", array('a'));
- $mock->returnsByValue("aMethod", "AAA");
- $this->assertIdentical($mock->aMethod('a'), "aaa");
- $this->assertIdentical($mock->aMethod('b'), "AAA");
- }
-
- function testMethodInterference() {
- $mock = new MockDummy();
- $mock->returnsByValueAt(0, "anotherMethod", "aaa");
- $mock->returnsByValue("aMethod", "AAA");
- $this->assertIdentical($mock->aMethod(), "AAA");
- $this->assertIdentical($mock->anotherMethod(), "aaa");
- }
-}
-
-class TestOfMockExpectationsThatPass extends UnitTestCase {
-
- function testAnyArgument() {
- $mock = new MockDummy();
- $mock->expect('aMethod', array('*'));
- $mock->aMethod(1);
- $mock->aMethod('hello');
- }
-
- function testAnyTwoArguments() {
- $mock = new MockDummy();
- $mock->expect('aMethod', array('*', '*'));
- $mock->aMethod(1, 2);
- }
-
- function testSpecificArgument() {
- $mock = new MockDummy();
- $mock->expect('aMethod', array(1));
- $mock->aMethod(1);
- }
-
- function testExpectation() {
- $mock = new MockDummy();
- $mock->expect('aMethod', array(new IsAExpectation('Dummy')));
- $mock->aMethod(new Dummy());
- }
-
- function testArgumentsInSequence() {
- $mock = new MockDummy();
- $mock->expectAt(0, 'aMethod', array(1, 2));
- $mock->expectAt(1, 'aMethod', array(3, 4));
- $mock->aMethod(1, 2);
- $mock->aMethod(3, 4);
- }
-
- function testAtLeastOnceSatisfiedByOneCall() {
- $mock = new MockDummy();
- $mock->expectAtLeastOnce('aMethod');
- $mock->aMethod();
- }
-
- function testAtLeastOnceSatisfiedByTwoCalls() {
- $mock = new MockDummy();
- $mock->expectAtLeastOnce('aMethod');
- $mock->aMethod();
- $mock->aMethod();
- }
-
- function testOnceSatisfiedByOneCall() {
- $mock = new MockDummy();
- $mock->expectOnce('aMethod');
- $mock->aMethod();
- }
-
- function testMinimumCallsSatisfiedByEnoughCalls() {
- $mock = new MockDummy();
- $mock->expectMinimumCallCount('aMethod', 1);
- $mock->aMethod();
- }
-
- function testMinimumCallsSatisfiedByTooManyCalls() {
- $mock = new MockDummy();
- $mock->expectMinimumCallCount('aMethod', 3);
- $mock->aMethod();
- $mock->aMethod();
- $mock->aMethod();
- $mock->aMethod();
- }
-
- function testMaximumCallsSatisfiedByEnoughCalls() {
- $mock = new MockDummy();
- $mock->expectMaximumCallCount('aMethod', 1);
- $mock->aMethod();
- }
-
- function testMaximumCallsSatisfiedByNoCalls() {
- $mock = new MockDummy();
- $mock->expectMaximumCallCount('aMethod', 1);
- }
-}
-
-class MockWithInjectedTestCase extends SimpleMock {
- protected function getCurrentTestCase() {
- return SimpleTest::getContext()->getTest()->getMockedTest();
- }
-}
-SimpleTest::setMockBaseClass('MockWithInjectedTestCase');
-Mock::generate('Dummy', 'MockDummyWithInjectedTestCase');
-SimpleTest::setMockBaseClass('SimpleMock');
-Mock::generate('SimpleTestCase');
-
-class LikeExpectation extends IdenticalExpectation {
- function __construct($expectation) {
- $expectation->message = '';
- parent::__construct($expectation);
- }
-
- function test($compare) {
- $compare->message = '';
- return parent::test($compare);
- }
-
- function testMessage($compare) {
- $compare->message = '';
- return parent::testMessage($compare);
- }
-}
-
-class TestOfMockExpectations extends UnitTestCase {
- private $test;
-
- function setUp() {
- $this->test = new MockSimpleTestCase();
- }
-
- function getMockedTest() {
- return $this->test;
- }
-
- function testSettingExpectationOnNonMethodThrowsError() {
- $mock = new MockDummyWithInjectedTestCase();
- $this->expectError();
- $mock->expectMaximumCallCount('aMissingMethod', 2);
- }
-
- function testMaxCallsDetectsOverrun() {
- $this->test->expectOnce('assert', array(new MemberExpectation('count', 2), 3));
- $mock = new MockDummyWithInjectedTestCase();
- $mock->expectMaximumCallCount('aMethod', 2);
- $mock->aMethod();
- $mock->aMethod();
- $mock->aMethod();
- $mock->mock->atTestEnd('testSomething', $this->test);
- }
-
- function testTallyOnMaxCallsSendsPassOnUnderrun() {
- $this->test->expectOnce('assert', array(new MemberExpectation('count', 2), 2));
- $mock = new MockDummyWithInjectedTestCase();
- $mock->expectMaximumCallCount("aMethod", 2);
- $mock->aMethod();
- $mock->aMethod();
- $mock->mock->atTestEnd('testSomething', $this->test);
- }
-
- function testExpectNeverDetectsOverrun() {
- $this->test->expectOnce('assert', array(new MemberExpectation('count', 0), 1));
- $mock = new MockDummyWithInjectedTestCase();
- $mock->expectNever('aMethod');
- $mock->aMethod();
- $mock->mock->atTestEnd('testSomething', $this->test);
- }
-
- function testTallyOnExpectNeverStillSendsPassOnUnderrun() {
- $this->test->expectOnce('assert', array(new MemberExpectation('count', 0), 0));
- $mock = new MockDummyWithInjectedTestCase();
- $mock->expectNever('aMethod');
- $mock->mock->atTestEnd('testSomething', $this->test);
- }
-
- function testMinCalls() {
- $this->test->expectOnce('assert', array(new MemberExpectation('count', 2), 2));
- $mock = new MockDummyWithInjectedTestCase();
- $mock->expectMinimumCallCount('aMethod', 2);
- $mock->aMethod();
- $mock->aMethod();
- $mock->mock->atTestEnd('testSomething', $this->test);
- }
-
- function testFailedNever() {
- $this->test->expectOnce('assert', array(new MemberExpectation('count', 0), 1));
- $mock = new MockDummyWithInjectedTestCase();
- $mock->expectNever('aMethod');
- $mock->aMethod();
- $mock->mock->atTestEnd('testSomething', $this->test);
- }
-
- function testUnderOnce() {
- $this->test->expectOnce('assert', array(new MemberExpectation('count', 1), 0));
- $mock = new MockDummyWithInjectedTestCase();
- $mock->expectOnce('aMethod');
- $mock->mock->atTestEnd('testSomething', $this->test);
- }
-
- function testOverOnce() {
- $this->test->expectOnce('assert', array(new MemberExpectation('count', 1), 2));
- $mock = new MockDummyWithInjectedTestCase();
- $mock->expectOnce('aMethod');
- $mock->aMethod();
- $mock->aMethod();
- $mock->mock->atTestEnd('testSomething', $this->test);
- }
-
- function testUnderAtLeastOnce() {
- $this->test->expectOnce('assert', array(new MemberExpectation('count', 1), 0));
- $mock = new MockDummyWithInjectedTestCase();
- $mock->expectAtLeastOnce("aMethod");
- $mock->mock->atTestEnd('testSomething', $this->test);
- }
-
- function testZeroArguments() {
- $this->test->expectOnce('assert',
- array(new MemberExpectation('expected', array()), array(), '*'));
- $mock = new MockDummyWithInjectedTestCase();
- $mock->expect('aMethod', array());
- $mock->aMethod();
- $mock->mock->atTestEnd('testSomething', $this->test);
- }
-
- function testExpectedArguments() {
- $this->test->expectOnce('assert',
- array(new MemberExpectation('expected', array(1, 2, 3)), array(1, 2, 3), '*'));
- $mock = new MockDummyWithInjectedTestCase();
- $mock->expect('aMethod', array(1, 2, 3));
- $mock->aMethod(1, 2, 3);
- $mock->mock->atTestEnd('testSomething', $this->test);
- }
-
- function testFailedArguments() {
- $this->test->expectOnce('assert',
- array(new MemberExpectation('expected', array('this')), array('that'), '*'));
- $mock = new MockDummyWithInjectedTestCase();
- $mock->expect('aMethod', array('this'));
- $mock->aMethod('that');
- $mock->mock->atTestEnd('testSomething', $this->test);
- }
-
- function testWildcardsAreTranslatedToAnythingExpectations() {
- $this->test->expectOnce('assert',
- array(new MemberExpectation('expected',
- array(new AnythingExpectation(),
- 123,
- new AnythingExpectation())),
- array(100, 123, 101), '*'));
- $mock = new MockDummyWithInjectedTestCase($this);
- $mock->expect("aMethod", array('*', 123, '*'));
- $mock->aMethod(100, 123, 101);
- $mock->mock->atTestEnd('testSomething', $this->test);
- }
-
- function testSpecificPassingSequence() {
- $this->test->expectAt(0, 'assert',
- array(new MemberExpectation('expected', array(1, 2, 3)), array(1, 2, 3), '*'));
- $this->test->expectAt(1, 'assert',
- array(new MemberExpectation('expected', array('Hello')), array('Hello'), '*'));
- $mock = new MockDummyWithInjectedTestCase();
- $mock->expectAt(1, 'aMethod', array(1, 2, 3));
- $mock->expectAt(2, 'aMethod', array('Hello'));
- $mock->aMethod();
- $mock->aMethod(1, 2, 3);
- $mock->aMethod('Hello');
- $mock->aMethod();
- $mock->mock->atTestEnd('testSomething', $this->test);
- }
-
- function testNonArrayForExpectedParametersGivesError() {
- $mock = new MockDummyWithInjectedTestCase();
- $this->expectError(new PatternExpectation('/\$args.*not an array/i'));
- $mock->expect("aMethod", "foo");
- $mock->aMethod();
- $mock->mock->atTestEnd('testSomething', $this->test);
- }
-}
-
-class TestOfMockComparisons extends UnitTestCase {
-
- function testEqualComparisonOfMocksDoesNotCrash() {
- $expectation = new EqualExpectation(new MockDummy());
- $this->assertTrue($expectation->test(new MockDummy(), true));
- }
-
- function testIdenticalComparisonOfMocksDoesNotCrash() {
- $expectation = new IdenticalExpectation(new MockDummy());
- $this->assertTrue($expectation->test(new MockDummy()));
- }
-}
-
-class ClassWithSpecialMethods {
- function __get($name) { }
- function __set($name, $value) { }
- function __isset($name) { }
- function __unset($name) { }
- function __call($method, $arguments) { }
- function __toString() { }
-}
-Mock::generate('ClassWithSpecialMethods');
-
-class TestOfSpecialMethodsAfterPHP51 extends UnitTestCase {
-
- function skip() {
- $this->skipIf(version_compare(phpversion(), '5.1', '<'), '__isset and __unset overloading not tested unless PHP 5.1+');
- }
-
- function testCanEmulateIsset() {
- $mock = new MockClassWithSpecialMethods();
- $mock->returnsByValue('__isset', true);
- $this->assertIdentical(isset($mock->a), true);
- }
-
- function testCanExpectUnset() {
- $mock = new MockClassWithSpecialMethods();
- $mock->expectOnce('__unset', array('a'));
- unset($mock->a);
- }
-
-}
-
-class TestOfSpecialMethods extends UnitTestCase {
- function skip() {
- $this->skipIf(version_compare(phpversion(), '5', '<'), 'Overloading not tested unless PHP 5+');
- }
-
- function testCanMockTheThingAtAll() {
- $mock = new MockClassWithSpecialMethods();
- }
-
- function testReturnFromSpecialAccessor() {
- $mock = new MockClassWithSpecialMethods();
- $mock->returnsByValue('__get', '1st Return', array('first'));
- $mock->returnsByValue('__get', '2nd Return', array('second'));
- $this->assertEqual($mock->first, '1st Return');
- $this->assertEqual($mock->second, '2nd Return');
- }
-
- function testcanExpectTheSettingOfValue() {
- $mock = new MockClassWithSpecialMethods();
- $mock->expectOnce('__set', array('a', 'A'));
- $mock->a = 'A';
- }
-
- function testCanSimulateAnOverloadmethod() {
- $mock = new MockClassWithSpecialMethods();
- $mock->expectOnce('__call', array('amOverloaded', array('A')));
- $mock->returnsByValue('__call', 'aaa');
- $this->assertIdentical($mock->amOverloaded('A'), 'aaa');
- }
-
- function testToStringMagic() {
- $mock = new MockClassWithSpecialMethods();
- $mock->expectOnce('__toString');
- $mock->returnsByValue('__toString', 'AAA');
- ob_start();
- print $mock;
- $output = ob_get_contents();
- ob_end_clean();
- $this->assertEqual($output, 'AAA');
- }
-}
-
-class WithStaticMethod {
- static function aStaticMethod() { }
-}
-Mock::generate('WithStaticMethod');
-
-class TestOfMockingClassesWithStaticMethods extends UnitTestCase {
-
- function testStaticMethodIsMockedAsStatic() {
- $mock = new WithStaticMethod();
- $reflection = new ReflectionClass($mock);
- $method = $reflection->getMethod('aStaticMethod');
- $this->assertTrue($method->isStatic());
- }
-}
-
-class MockTestException extends Exception { }
-
-class TestOfThrowingExceptionsFromMocks extends UnitTestCase {
-
- function testCanThrowOnMethodCall() {
- $mock = new MockDummy();
- $mock->throwOn('aMethod');
- $this->expectException();
- $mock->aMethod();
- }
-
- function testCanThrowSpecificExceptionOnMethodCall() {
- $mock = new MockDummy();
- $mock->throwOn('aMethod', new MockTestException());
- $this->expectException();
- $mock->aMethod();
- }
-
- function testThrowsOnlyWhenCallSignatureMatches() {
- $mock = new MockDummy();
- $mock->throwOn('aMethod', new MockTestException(), array(3));
- $mock->aMethod(1);
- $mock->aMethod(2);
- $this->expectException();
- $mock->aMethod(3);
- }
-
- function testCanThrowOnParticularInvocation() {
- $mock = new MockDummy();
- $mock->throwAt(2, 'aMethod', new MockTestException());
- $mock->aMethod();
- $mock->aMethod();
- $this->expectException();
- $mock->aMethod();
- }
-}
-
-class TestOfThrowingErrorsFromMocks extends UnitTestCase {
-
- function testCanGenerateErrorFromMethodCall() {
- $mock = new MockDummy();
- $mock->errorOn('aMethod', 'Ouch!');
- $this->expectError('Ouch!');
- $mock->aMethod();
- }
-
- function testGeneratesErrorOnlyWhenCallSignatureMatches() {
- $mock = new MockDummy();
- $mock->errorOn('aMethod', 'Ouch!', array(3));
- $mock->aMethod(1);
- $mock->aMethod(2);
- $this->expectError();
- $mock->aMethod(3);
- }
-
- function testCanGenerateErrorOnParticularInvocation() {
- $mock = new MockDummy();
- $mock->errorAt(2, 'aMethod', 'Ouch!');
- $mock->aMethod();
- $mock->aMethod();
- $this->expectError();
- $mock->aMethod();
- }
-}
-
-Mock::generatePartial('Dummy', 'TestDummy', array('anotherMethod', 'aReferenceMethod'));
-
-class TestOfPartialMocks extends UnitTestCase {
-
- function testMethodReplacementWithNoBehaviourReturnsNull() {
- $mock = new TestDummy();
- $this->assertEqual($mock->aMethod(99), 99);
- $this->assertNull($mock->anotherMethod());
- }
-
- function testSettingReturns() {
- $mock = new TestDummy();
- $mock->returnsByValue('anotherMethod', 33, array(3));
- $mock->returnsByValue('anotherMethod', 22);
- $mock->returnsByValueAt(2, 'anotherMethod', 44, array(3));
- $this->assertEqual($mock->anotherMethod(), 22);
- $this->assertEqual($mock->anotherMethod(3), 33);
- $this->assertEqual($mock->anotherMethod(3), 44);
- }
-
- function testSetReturnReferenceGivesOriginal() {
- $mock = new TestDummy();
- $object = 99;
- $mock->returnsByReferenceAt(0, 'aReferenceMethod', $object, array(3));
- $this->assertReference($mock->aReferenceMethod(3), $object);
- }
-
- function testReturnsAtGivesOriginalObjectHandle() {
- $mock = new TestDummy();
- $object = new Dummy();
- $mock->returnsAt(0, 'anotherMethod', $object, array(3));
- $this->assertSame($mock->anotherMethod(3), $object);
- }
-
- function testExpectations() {
- $mock = new TestDummy();
- $mock->expectCallCount('anotherMethod', 2);
- $mock->expect('anotherMethod', array(77));
- $mock->expectAt(1, 'anotherMethod', array(66));
- $mock->anotherMethod(77);
- $mock->anotherMethod(66);
- }
-
- function testSettingExpectationOnMissingMethodThrowsError() {
- $mock = new TestDummy();
- $this->expectError();
- $mock->expectCallCount('aMissingMethod', 2);
- }
-}
-
-class ConstructorSuperClass {
- function ConstructorSuperClass() { }
-}
-
-class ConstructorSubClass extends ConstructorSuperClass { }
-
-class TestOfPHP4StyleSuperClassConstruct extends UnitTestCase {
- function testBasicConstruct() {
- Mock::generate('ConstructorSubClass');
- $mock = new MockConstructorSubClass();
- $this->assertIsA($mock, 'ConstructorSubClass');
- $this->assertTrue(method_exists($mock, 'ConstructorSuperClass'));
- }
-}
-
-class TestOfPHP5StaticMethodMocking extends UnitTestCase {
- function testCanCreateAMockObjectWithStaticMethodsWithoutError() {
- eval('
- class SimpleObjectContainingStaticMethod {
- static function someStatic() { }
- }
- ');
- Mock::generate('SimpleObjectContainingStaticMethod');
- }
-}
-
-class TestOfPHP5AbstractMethodMocking extends UnitTestCase {
- function testCanCreateAMockObjectFromAnAbstractWithProperFunctionDeclarations() {
- eval('
- abstract class SimpleAbstractClassContainingAbstractMethods {
- abstract function anAbstract();
- abstract function anAbstractWithParameter($foo);
- abstract function anAbstractWithMultipleParameters($foo, $bar);
- }
- ');
- Mock::generate('SimpleAbstractClassContainingAbstractMethods');
- $this->assertTrue(
- method_exists(
- // Testing with class name alone does not work in PHP 5.0
- new MockSimpleAbstractClassContainingAbstractMethods,
- 'anAbstract'
- )
- );
- $this->assertTrue(
- method_exists(
- new MockSimpleAbstractClassContainingAbstractMethods,
- 'anAbstractWithParameter'
- )
- );
- $this->assertTrue(
- method_exists(
- new MockSimpleAbstractClassContainingAbstractMethods,
- 'anAbstractWithMultipleParameters'
- )
- );
- }
-
- function testMethodsDefinedAsAbstractInParentShouldHaveFullSignature() {
- eval('
- abstract class SimpleParentAbstractClassContainingAbstractMethods {
- abstract function anAbstract();
- abstract function anAbstractWithParameter($foo);
- abstract function anAbstractWithMultipleParameters($foo, $bar);
- }
-
- class SimpleChildAbstractClassContainingAbstractMethods extends SimpleParentAbstractClassContainingAbstractMethods {
- function anAbstract(){}
- function anAbstractWithParameter($foo){}
- function anAbstractWithMultipleParameters($foo, $bar){}
- }
-
- class EvenDeeperEmptyChildClass extends SimpleChildAbstractClassContainingAbstractMethods {}
- ');
- Mock::generate('SimpleChildAbstractClassContainingAbstractMethods');
- $this->assertTrue(
- method_exists(
- new MockSimpleChildAbstractClassContainingAbstractMethods,
- 'anAbstract'
- )
- );
- $this->assertTrue(
- method_exists(
- new MockSimpleChildAbstractClassContainingAbstractMethods,
- 'anAbstractWithParameter'
- )
- );
- $this->assertTrue(
- method_exists(
- new MockSimpleChildAbstractClassContainingAbstractMethods,
- 'anAbstractWithMultipleParameters'
- )
- );
- Mock::generate('EvenDeeperEmptyChildClass');
- $this->assertTrue(
- method_exists(
- new MockEvenDeeperEmptyChildClass,
- 'anAbstract'
- )
- );
- $this->assertTrue(
- method_exists(
- new MockEvenDeeperEmptyChildClass,
- 'anAbstractWithParameter'
- )
- );
- $this->assertTrue(
- method_exists(
- new MockEvenDeeperEmptyChildClass,
- 'anAbstractWithMultipleParameters'
- )
- );
- }
-}
-
-class DummyWithProtected
-{
- public function aMethodCallsProtected() { return $this->aProtectedMethod(); }
- protected function aProtectedMethod() { return true; }
-}
-
-Mock::generatePartial('DummyWithProtected', 'TestDummyWithProtected', array('aProtectedMethod'));
-class TestOfProtectedMethodPartialMocks extends UnitTestCase
-{
- function testProtectedMethodExists() {
- $this->assertTrue(
- method_exists(
- new TestDummyWithProtected,
- 'aProtectedMethod'
- )
- );
- }
-
- function testProtectedMethodIsCalled() {
- $object = new DummyWithProtected();
- $this->assertTrue($object->aMethodCallsProtected(), 'ensure original was called');
- }
-
- function testMockedMethodIsCalled() {
- $object = new TestDummyWithProtected();
- $object->returnsByValue('aProtectedMethod', false);
- $this->assertFalse($object->aMethodCallsProtected());
- }
-}
-
-?>
diff --git a/3rdparty/simpletest/test/page_test.php b/3rdparty/simpletest/test/page_test.php
deleted file mode 100644
index fdc15c5d008..00000000000
--- a/3rdparty/simpletest/test/page_test.php
+++ /dev/null
@@ -1,166 +0,0 @@
-<?php
-// $Id: page_test.php 1913 2009-07-29 16:50:56Z lastcraft $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../expectation.php');
-require_once(dirname(__FILE__) . '/../http.php');
-require_once(dirname(__FILE__) . '/../page.php');
-Mock::generate('SimpleHttpHeaders');
-Mock::generate('SimpleHttpResponse');
-
-class TestOfPageInterface extends UnitTestCase {
- function testInterfaceOnEmptyPage() {
- $page = new SimplePage();
- $this->assertEqual($page->getTransportError(), 'No page fetched yet');
- $this->assertIdentical($page->getRaw(), false);
- $this->assertIdentical($page->getHeaders(), false);
- $this->assertIdentical($page->getMimeType(), false);
- $this->assertIdentical($page->getResponseCode(), false);
- $this->assertIdentical($page->getAuthentication(), false);
- $this->assertIdentical($page->getRealm(), false);
- $this->assertFalse($page->hasFrames());
- $this->assertIdentical($page->getUrls(), array());
- $this->assertIdentical($page->getTitle(), false);
- }
-}
-
-class TestOfPageHeaders extends UnitTestCase {
-
- function testUrlAccessor() {
- $headers = new MockSimpleHttpHeaders();
-
- $response = new MockSimpleHttpResponse();
- $response->setReturnValue('getHeaders', $headers);
- $response->setReturnValue('getMethod', 'POST');
- $response->setReturnValue('getUrl', new SimpleUrl('here'));
- $response->setReturnValue('getRequestData', array('a' => 'A'));
-
- $page = new SimplePage($response);
- $this->assertEqual($page->getMethod(), 'POST');
- $this->assertEqual($page->getUrl(), new SimpleUrl('here'));
- $this->assertEqual($page->getRequestData(), array('a' => 'A'));
- }
-
- function testTransportError() {
- $response = new MockSimpleHttpResponse();
- $response->setReturnValue('getError', 'Ouch');
-
- $page = new SimplePage($response);
- $this->assertEqual($page->getTransportError(), 'Ouch');
- }
-
- function testHeadersAccessor() {
- $headers = new MockSimpleHttpHeaders();
- $headers->setReturnValue('getRaw', 'My: Headers');
-
- $response = new MockSimpleHttpResponse();
- $response->setReturnValue('getHeaders', $headers);
-
- $page = new SimplePage($response);
- $this->assertEqual($page->getHeaders(), 'My: Headers');
- }
-
- function testMimeAccessor() {
- $headers = new MockSimpleHttpHeaders();
- $headers->setReturnValue('getMimeType', 'text/html');
-
- $response = new MockSimpleHttpResponse();
- $response->setReturnValue('getHeaders', $headers);
-
- $page = new SimplePage($response);
- $this->assertEqual($page->getMimeType(), 'text/html');
- }
-
- function testResponseAccessor() {
- $headers = new MockSimpleHttpHeaders();
- $headers->setReturnValue('getResponseCode', 301);
-
- $response = new MockSimpleHttpResponse();
- $response->setReturnValue('getHeaders', $headers);
-
- $page = new SimplePage($response);
- $this->assertIdentical($page->getResponseCode(), 301);
- }
-
- function testAuthenticationAccessors() {
- $headers = new MockSimpleHttpHeaders();
- $headers->setReturnValue('getAuthentication', 'Basic');
- $headers->setReturnValue('getRealm', 'Secret stuff');
-
- $response = new MockSimpleHttpResponse();
- $response->setReturnValue('getHeaders', $headers);
-
- $page = new SimplePage($response);
- $this->assertEqual($page->getAuthentication(), 'Basic');
- $this->assertEqual($page->getRealm(), 'Secret stuff');
- }
-}
-
-class TestOfHtmlStrippingAndNormalisation extends UnitTestCase {
-
- function testImageSuppressionWhileKeepingParagraphsAndAltText() {
- $this->assertEqual(
- SimplePage::normalise('<img src="foo.png" /><p>some text</p><img src="bar.png" alt="bar" />'),
- 'some text bar');
- }
-
- function testSpaceNormalisation() {
- $this->assertEqual(
- SimplePage::normalise("\nOne\tTwo \nThree\t"),
- 'One Two Three');
- }
-
- function testMultilinesCommentSuppression() {
- $this->assertEqual(
- SimplePage::normalise('<!--\n Hello \n-->'),
- '');
- }
-
- function testCommentSuppression() {
- $this->assertEqual(
- SimplePage::normalise('<!--Hello-->'),
- '');
- }
-
- function testJavascriptSuppression() {
- $this->assertEqual(
- SimplePage::normalise('<script attribute="test">\nHello\n</script>'),
- '');
- $this->assertEqual(
- SimplePage::normalise('<script attribute="test">Hello</script>'),
- '');
- $this->assertEqual(
- SimplePage::normalise('<script>Hello</script>'),
- '');
- }
-
- function testTagSuppression() {
- $this->assertEqual(
- SimplePage::normalise('<b>Hello</b>'),
- 'Hello');
- }
-
- function testAdjoiningTagSuppression() {
- $this->assertEqual(
- SimplePage::normalise('<b>Hello</b><em>Goodbye</em>'),
- 'HelloGoodbye');
- }
-
- function testExtractImageAltTextWithDifferentQuotes() {
- $this->assertEqual(
- SimplePage::normalise('<img alt="One"><img alt=\'Two\'><img alt=Three>'),
- 'One Two Three');
- }
-
- function testExtractImageAltTextMultipleTimes() {
- $this->assertEqual(
- SimplePage::normalise('<img alt="One"><img alt="Two"><img alt="Three">'),
- 'One Two Three');
- }
-
- function testHtmlEntityTranslation() {
- $this->assertEqual(
- SimplePage::normalise('&lt;&gt;&quot;&amp;&#039;'),
- '<>"&\'');
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/parse_error_test.php b/3rdparty/simpletest/test/parse_error_test.php
deleted file mode 100644
index c3ffb3d4205..00000000000
--- a/3rdparty/simpletest/test/parse_error_test.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-// $Id: parse_error_test.php 1509 2007-05-08 22:11:49Z lastcraft $
-require_once('../unit_tester.php');
-require_once('../reporter.php');
-
-$test = &new TestSuite('This should fail');
-$test->addFile('test_with_parse_error.php');
-$test->run(new HtmlReporter());
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/parsing_test.php b/3rdparty/simpletest/test/parsing_test.php
deleted file mode 100644
index 2c5e6cafe1d..00000000000
--- a/3rdparty/simpletest/test/parsing_test.php
+++ /dev/null
@@ -1,642 +0,0 @@
-<?php
-// $Id: page_test.php 1912 2009-07-29 16:39:17Z lastcraft $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../page.php');
-require_once(dirname(__FILE__) . '/../php_parser.php');
-require_once(dirname(__FILE__) . '/../tidy_parser.php');
-Mock::generate('SimpleHttpResponse');
-
-abstract class TestOfParsing extends UnitTestCase {
-
- function testRawAccessor() {
- $page = $this->whenVisiting('http://host/', 'Raw HTML');
- $this->assertEqual($page->getRaw(), 'Raw HTML');
- }
-
- function testTextAccessor() {
- $page = $this->whenVisiting('http://host/', '<b>Some</b> &quot;messy&quot; HTML');
- $this->assertEqual($page->getText(), 'Some "messy" HTML');
- }
-
- function testFramesetAbsence() {
- $page = $this->whenVisiting('http://here/', '');
- $this->assertFalse($page->hasFrames());
- $this->assertIdentical($page->getFrameset(), false);
- }
-
- function testPageWithNoUrlsGivesEmptyArrayOfLinks() {
- $page = $this->whenVisiting('http://here/', '<html><body><p>Stuff</p></body></html>');
- $this->assertIdentical($page->getUrls(), array());
- }
-
- function testAddAbsoluteLink() {
- $page = $this->whenVisiting('http://host',
- '<html><a href="http://somewhere.com">Label</a></html>');
- $this->assertEqual(
- $page->getUrlsByLabel('Label'),
- array(new SimpleUrl('http://somewhere.com')));
- }
-
- function testUrlLabelsHaveHtmlTagsStripped() {
- $page = $this->whenVisiting('http://host',
- '<html><a href="http://somewhere.com"><b>Label</b></a></html>');
- $this->assertEqual(
- $page->getUrlsByLabel('Label'),
- array(new SimpleUrl('http://somewhere.com')));
- }
-
- function testAddStrictRelativeLink() {
- $page = $this->whenVisiting('http://host',
- '<html><a href="./somewhere.php">Label</a></html>');
- $this->assertEqual(
- $page->getUrlsByLabel('Label'),
- array(new SimpleUrl('http://host/somewhere.php')));
- }
-
- function testAddBareRelativeLink() {
- $page = $this->whenVisiting('http://host',
- '<html><a href="somewhere.php">Label</a></html>');
- $this->assertEqual(
- $page->getUrlsByLabel('Label'),
- array(new SimpleUrl('http://host/somewhere.php')));
- }
-
- function testAddRelativeLinkWithBaseTag() {
- $raw = '<html><head><base href="http://www.lastcraft.com/stuff/"></head>' .
- '<body><a href="somewhere.php">Label</a></body>' .
- '</html>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual(
- $page->getUrlsByLabel('Label'),
- array(new SimpleUrl('http://www.lastcraft.com/stuff/somewhere.php')));
- }
-
- function testAddAbsoluteLinkWithBaseTag() {
- $raw = '<html><head><base href="http://www.lastcraft.com/stuff/"></head>' .
- '<body><a href="http://here.com/somewhere.php">Label</a></body>' .
- '</html>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual(
- $page->getUrlsByLabel('Label'),
- array(new SimpleUrl('http://here.com/somewhere.php')));
- }
-
- function testCanFindLinkInsideForm() {
- $raw = '<html><body><form><a href="./somewhere.php">Label</a></form></body></html>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual(
- $page->getUrlsByLabel('Label'),
- array(new SimpleUrl('http://host/somewhere.php')));
- }
-
- function testCanGetLinksByIdOrLabel() {
- $raw = '<html><body><a href="./somewhere.php" id="33">Label</a></body></html>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual(
- $page->getUrlsByLabel('Label'),
- array(new SimpleUrl('http://host/somewhere.php')));
- $this->assertFalse($page->getUrlById(0));
- $this->assertEqual(
- $page->getUrlById(33),
- new SimpleUrl('http://host/somewhere.php'));
- }
-
- function testCanFindLinkByNormalisedLabel() {
- $raw = '<html><body><a href="./somewhere.php" id="33"><em>Long &amp; thin</em></a></body></html>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual(
- $page->getUrlsByLabel('Long & thin'),
- array(new SimpleUrl('http://host/somewhere.php')));
- }
-
- function testCanFindLinkByImageAltText() {
- $raw = '<a href="./somewhere.php" id="33"><img src="pic.jpg" alt="&lt;A picture&gt;"></a>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual(
- array_map(array($this, 'urlToString'), $page->getUrlsByLabel('<A picture>')),
- array('http://host/somewhere.php'));
- }
-
- function testTitle() {
- $page = $this->whenVisiting('http://host',
- '<html><head><title>Me</title></head></html>');
- $this->assertEqual($page->getTitle(), 'Me');
- }
-
- function testTitleWithEntityReference() {
- $page = $this->whenVisiting('http://host',
- '<html><head><Title>Me&amp;Me</TITLE></head></html>');
- $this->assertEqual($page->getTitle(), "Me&Me");
- }
-
- function testOnlyFramesInFramesetAreRecognised() {
- $raw =
- '<frameset>' .
- ' <frame src="2.html"></frame>' .
- ' <frame src="3.html"></frame>' .
- '</frameset>' .
- '<frame src="4.html"></frame>';
- $page = $this->whenVisiting('http://here', $raw);
- $this->assertTrue($page->hasFrames());
- $this->assertSameFrameset($page->getFrameset(), array(
- 1 => new SimpleUrl('http://here/2.html'),
- 2 => new SimpleUrl('http://here/3.html')));
- }
-
- function testReadsNamesInFrames() {
- $raw =
- '<frameset>' .
- ' <frame src="1.html"></frame>' .
- ' <frame src="2.html" name="A"></frame>' .
- ' <frame src="3.html" name="B"></frame>' .
- ' <frame src="4.html"></frame>' .
- '</frameset>';
- $page = $this->whenVisiting('http://here', $raw);
- $this->assertTrue($page->hasFrames());
- $this->assertSameFrameset($page->getFrameset(), array(
- 1 => new SimpleUrl('http://here/1.html'),
- 'A' => new SimpleUrl('http://here/2.html'),
- 'B' => new SimpleUrl('http://here/3.html'),
- 4 => new SimpleUrl('http://here/4.html')));
- }
-
- function testRelativeFramesRespectBaseTag() {
- $raw = '<base href="https://there.com/stuff/"><frameset><frame src="1.html"></frameset>';
- $page = $this->whenVisiting('http://here', $raw);
- $this->assertSameFrameset(
- $page->getFrameset(),
- array(1 => new SimpleUrl('https://there.com/stuff/1.html')));
- }
-
- function testSingleFrameInNestedFrameset() {
- $raw = '<html><frameset><frameset>' .
- '<frame src="a.html">' .
- '</frameset></frameset></html>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertTrue($page->hasFrames());
- $this->assertIdentical(
- $page->getFrameset(),
- array(1 => new SimpleUrl('http://host/a.html')));
- }
-
- function testFramesCollectedWithNestedFramesetTags() {
- $raw = '<html><frameset>' .
- '<frame src="a.html">' .
- '<frameset><frame src="b.html"></frameset>' .
- '<frame src="c.html">' .
- '</frameset></html>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertTrue($page->hasFrames());
- $this->assertIdentical($page->getFrameset(), array(
- 1 => new SimpleUrl('http://host/a.html'),
- 2 => new SimpleUrl('http://host/b.html'),
- 3 => new SimpleUrl('http://host/c.html')));
- }
-
- function testNamedFrames() {
- $raw = '<html><frameset>' .
- '<frame src="a.html">' .
- '<frame name="_one" src="b.html">' .
- '<frame src="c.html">' .
- '<frame src="d.html" name="_two">' .
- '</frameset></html>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertTrue($page->hasFrames());
- $this->assertIdentical($page->getFrameset(), array(
- 1 => new SimpleUrl('http://host/a.html'),
- '_one' => new SimpleUrl('http://host/b.html'),
- 3 => new SimpleUrl('http://host/c.html'),
- '_two' => new SimpleUrl('http://host/d.html')));
- }
-
- function testCanReadElementOfCompleteForm() {
- $raw = '<html><head><form>' .
- '<input type="text" name="here" value="Hello">' .
- '</form></head></html>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual($page->getField(new SimpleByName('here')), "Hello");
- }
-
- function testCanReadElementOfUnclosedForm() {
- $raw = '<html><head><form>' .
- '<input type="text" name="here" value="Hello">' .
- '</head></html>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual($page->getField(new SimpleByName('here')), "Hello");
- }
-
- function testCanReadElementByLabel() {
- $raw = '<html><head><form>' .
- '<label>Where<input type="text" name="here" value="Hello"></label>' .
- '</head></html>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual($page->getField(new SimpleByLabel('Where')), "Hello");
- }
-
- function testCanFindFormByLabel() {
- $raw = '<html><head><form><input type="submit"></form></head></html>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertNull($page->getFormBySubmit(new SimpleByLabel('submit')));
- $this->assertNull($page->getFormBySubmit(new SimpleByName('submit')));
- $this->assertIsA(
- $page->getFormBySubmit(new SimpleByLabel('Submit')),
- 'SimpleForm');
- }
-
- function testConfirmSubmitAttributesAreCaseSensitive() {
- $raw = '<html><head><FORM><INPUT TYPE="SUBMIT" NAME="S" VALUE="S"></FORM></head></html>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertIsA(
- $page->getFormBySubmit(new SimpleByName('S')),
- 'SimpleForm');
- $this->assertIsA(
- $page->getFormBySubmit(new SimpleByLabel('S')),
- 'SimpleForm');
- }
-
- function testCanFindFormByImage() {
- $raw = '<html><head><form>' .
- '<input type="image" id=100 alt="Label" name="me">' .
- '</form></head></html>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertIsA(
- $page->getFormByImage(new SimpleByLabel('Label')),
- 'SimpleForm');
- $this->assertIsA(
- $page->getFormByImage(new SimpleByName('me')),
- 'SimpleForm');
- $this->assertIsA(
- $page->getFormByImage(new SimpleById(100)),
- 'SimpleForm');
- }
-
- function testCanFindFormByButtonTag() {
- $raw = '<html><head><form>' .
- '<button type="submit" name="b" value="B">BBB</button>' .
- '</form></head></html>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertNull($page->getFormBySubmit(new SimpleByLabel('b')));
- $this->assertNull($page->getFormBySubmit(new SimpleByLabel('B')));
- $this->assertIsA(
- $page->getFormBySubmit(new SimpleByName('b')),
- 'SimpleForm');
- $this->assertIsA(
- $page->getFormBySubmit(new SimpleByLabel('BBB')),
- 'SimpleForm');
- }
-
- function testCanFindFormById() {
- $raw = '<html><head><form id="55"><input type="submit"></form></head></html>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertNull($page->getFormById(54));
- $this->assertIsA($page->getFormById(55), 'SimpleForm');
- }
-
- function testFormCanBeSubmitted() {
- $raw = '<html><head><form method="GET" action="here.php">' .
- '<input type="submit" name="s" value="Submit">' .
- '</form></head></html>';
- $page = $this->whenVisiting('http://host', $raw);
- $form = $page->getFormBySubmit(new SimpleByLabel('Submit'));
- $this->assertEqual(
- $form->submitButton(new SimpleByLabel('Submit')),
- new SimpleGetEncoding(array('s' => 'Submit')));
- }
-
- function testUnparsedTagDoesNotCrash() {
- $raw = '<form><input type="reset" name="Clear"></form>';
- $this->whenVisiting('http://host', $raw);
- }
-
- function testReadingTextField() {
- $raw = '<html><head><form>' .
- '<input type="text" name="a">' .
- '<input type="text" name="b" value="bbb" id=3>' .
- '</form></head></html>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertNull($page->getField(new SimpleByName('missing')));
- $this->assertIdentical($page->getField(new SimpleByName('a')), '');
- $this->assertIdentical($page->getField(new SimpleByName('b')), 'bbb');
- }
-
- function testEntitiesAreDecodedInDefaultTextFieldValue() {
- $raw = '<form><input type="text" name="a" value="&amp;\'&quot;&lt;&gt;"></form>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual($page->getField(new SimpleByName('a')), '&\'"<>');
- }
-
- function testReadingTextFieldIsCaseInsensitive() {
- $raw = '<html><head><FORM>' .
- '<INPUT TYPE="TEXT" NAME="a">' .
- '<INPUT TYPE="TEXT" NAME="b" VALUE="bbb" id=3>' .
- '</FORM></head></html>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertNull($page->getField(new SimpleByName('missing')));
- $this->assertIdentical($page->getField(new SimpleByName('a')), '');
- $this->assertIdentical($page->getField(new SimpleByName('b')), 'bbb');
- }
-
- function testSettingTextField() {
- $raw = '<html><head><form>' .
- '<input type="text" name="a">' .
- '<input type="text" name="b" id=3>' .
- '<input type="submit">' .
- '</form></head></html>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertTrue($page->setField(new SimpleByName('a'), 'aaa'));
- $this->assertEqual($page->getField(new SimpleByName('a')), 'aaa');
- $this->assertTrue($page->setField(new SimpleById(3), 'bbb'));
- $this->assertEqual($page->getField(new SimpleBYId(3)), 'bbb');
- $this->assertFalse($page->setField(new SimpleByName('z'), 'zzz'));
- $this->assertNull($page->getField(new SimpleByName('z')));
- }
-
- function testSettingTextFieldByEnclosingLabel() {
- $raw = '<html><head><form>' .
- '<label>Stuff' .
- '<input type="text" name="a" value="A">' .
- '</label>' .
- '</form></head></html>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual($page->getField(new SimpleByName('a')), 'A');
- $this->assertEqual($page->getField(new SimpleByLabel('Stuff')), 'A');
- $this->assertTrue($page->setField(new SimpleByLabel('Stuff'), 'aaa'));
- $this->assertEqual($page->getField(new SimpleByLabel('Stuff')), 'aaa');
- }
-
- function testLabelsWithoutForDoNotAttachToInputsWithNoId() {
- $raw = '<form action="network_confirm.php?x=X&y=Y" method="post">
- <label>Text A <input type="text" name="a" value="one"></label>
- <label>Text B <input type="text" name="b" value="two"></label>
- </form>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual($page->getField(new SimpleByLabelOrName('Text A')), 'one');
- $this->assertEqual($page->getField(new SimpleByLabelOrName('Text B')), 'two');
- $this->assertTrue($page->setField(new SimpleByLabelOrName('Text A'), '1'));
- $this->assertTrue($page->setField(new SimpleByLabelOrName('Text B'), '2'));
- $this->assertEqual($page->getField(new SimpleByLabelOrName('Text A')), '1');
- $this->assertEqual($page->getField(new SimpleByLabelOrName('Text B')), '2');
- }
-
- function testGettingTextFieldByEnclosingLabelWithConflictingOtherFields() {
- $raw = '<html><head><form>' .
- '<label>Stuff' .
- '<input type="text" name="a" value="A">' .
- '</label>' .
- '<input type="text" name="b" value="B">' .
- '</form></head></html>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual($page->getField(new SimpleByName('a')), 'A');
- $this->assertEqual($page->getField(new SimpleByName('b')), 'B');
- $this->assertEqual($page->getField(new SimpleByLabel('Stuff')), 'A');
- }
-
- function testSettingTextFieldByExternalLabel() {
- $raw = '<html><head><form>' .
- '<label for="aaa">Stuff</label>' .
- '<input id="aaa" type="text" name="a" value="A">' .
- '</form></head></html>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual($page->getField(new SimpleByLabel('Stuff')), 'A');
- $this->assertTrue($page->setField(new SimpleByLabel('Stuff'), 'aaa'));
- $this->assertEqual($page->getField(new SimpleByLabel('Stuff')), 'aaa');
- }
-
- function testReadingTextArea() {
- $raw = '<html><head><form>' .
- '<textarea name="a">aaa</textarea>' .
- '<input type="submit">' .
- '</form></head></html>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual($page->getField(new SimpleByName('a')), 'aaa');
- }
-
- function testEntitiesAreDecodedInTextareaValue() {
- $raw = '<form><textarea name="a">&amp;\'&quot;&lt;&gt;</textarea></form>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual($page->getField(new SimpleByName('a')), '&\'"<>');
- }
-
- function testNewlinesPreservedInTextArea() {
- $raw = "<form><textarea name=\"a\">hello\r\nworld</textarea></form>";
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual($page->getField(new SimpleByName('a')), "hello\r\nworld");
- }
-
- function testWhitespacePreservedInTextArea() {
- $raw = '<form><textarea name="a"> </textarea></form>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual($page->getField(new SimpleByName('a')), ' ');
- }
-
- function testComplexWhitespaceInTextArea() {
- $raw = "<html>\n" .
- " <head><title></title></head>\n" .
- " <body>\n" .
- " <form>\n".
- " <label>Text area C\n" .
- " <textarea name='c'>\n" .
- " </textarea>\n" .
- " </label>\n" .
- " </form>\n" .
- " </body>\n" .
- "</html>";
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual($page->getField(new SimpleByName('c')), " ");
- }
-
- function testSettingTextArea() {
- $raw = '<form>' .
- '<textarea name="a">aaa</textarea>' .
- '<input type="submit">' .
- '</form>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertTrue($page->setField(new SimpleByName('a'), 'AAA'));
- $this->assertEqual($page->getField(new SimpleByName('a')), 'AAA');
- }
-
- function testDontIncludeTextAreaContentInLabel() {
- $raw = '<form><label>Text area C<textarea id=3 name="c">mouse</textarea></label></form>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual($page->getField(new SimpleByLabel('Text area C')), 'mouse');
- }
-
- function testSettingSelectionField() {
- $raw = '<form>' .
- '<select name="a">' .
- '<option>aaa</option>' .
- '<option selected>bbb</option>' .
- '</select>' .
- '<input type="submit">' .
- '</form>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual($page->getField(new SimpleByName('a')), 'bbb');
- $this->assertFalse($page->setField(new SimpleByName('a'), 'ccc'));
- $this->assertTrue($page->setField(new SimpleByName('a'), 'aaa'));
- $this->assertEqual($page->getField(new SimpleByName('a')), 'aaa');
- }
-
- function testSelectionOptionsAreNormalised() {
- $raw = '<form>' .
- '<select name="a">' .
- '<option selected><b>Big</b> bold</option>' .
- '<option>small <em>italic</em></option>' .
- '</select>' .
- '</form>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual($page->getField(new SimpleByName('a')), 'Big bold');
- $this->assertTrue($page->setField(new SimpleByName('a'), 'small italic'));
- $this->assertEqual($page->getField(new SimpleByName('a')), 'small italic');
- }
-
- function testCanParseBlankOptions() {
- $raw = '<form>
- <select id=4 name="d">
- <option value="d1">D1</option>
- <option value="d2">D2</option>
- <option></option>
- </select>
- </form>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertTrue($page->setField(new SimpleByName('d'), ''));
- }
-
- function testTwoSelectionFieldsAreIndependent() {
- $raw = '<form>
- <select id=4 name="d">
- <option value="d1" selected>D1</option>
- <option value="d2">D2</option>
- </select>
- <select id=11 name="h">
- <option value="h1">H1</option>
- <option value="h2" selected>H2</option>
- </select>
- </form>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertTrue($page->setField(new SimpleByName('d'), 'd2'));
- $this->assertTrue($page->setField(new SimpleByName('h'), 'h1'));
- $this->assertEqual($page->getField(new SimpleByName('d')), 'd2');
- }
-
- function testEmptyOptionDoesNotScrewUpTwoSelectionFields() {
- $raw = '<form>
- <select name="d">
- <option value="d1" selected>D1</option>
- <option value="d2">D2</option>
- <option></option>
- </select>
- <select name="h">
- <option value="h1">H1</option>
- <option value="h2" selected>H2</option>
- </select>
- </form>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertTrue($page->setField(new SimpleByName('d'), 'd2'));
- $this->assertTrue($page->setField(new SimpleByName('h'), 'h1'));
- $this->assertEqual($page->getField(new SimpleByName('d')), 'd2');
- }
-
- function testSettingSelectionFieldByEnclosingLabel() {
- $raw = '<form>' .
- '<label>Stuff' .
- '<select name="a"><option selected>A</option><option>B</option></select>' .
- '</label>' .
- '</form>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual($page->getField(new SimpleByLabel('Stuff')), 'A');
- $this->assertTrue($page->setField(new SimpleByLabel('Stuff'), 'B'));
- $this->assertEqual($page->getField(new SimpleByLabel('Stuff')), 'B');
- }
-
- function testTwoSelectionFieldsWithLabelsAreIndependent() {
- $raw = '<form>
- <label>Labelled D
- <select id=4 name="d">
- <option value="d1" selected>D1</option>
- <option value="d2">D2</option>
- </select>
- </label>
- <label>Labelled H
- <select id=11 name="h">
- <option value="h1">H1</option>
- <option value="h2" selected>H2</option>
- </select>
- </label>
- </form>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertTrue($page->setField(new SimpleByLabel('Labelled D'), 'd2'));
- $this->assertTrue($page->setField(new SimpleByLabel('Labelled H'), 'h1'));
- $this->assertEqual($page->getField(new SimpleByLabel('Labelled D')), 'd2');
- }
-
- function testSettingRadioButtonByEnclosingLabel() {
- $raw = '<form>' .
- '<label>A<input type="radio" name="r" value="a" checked></label>' .
- '<label>B<input type="radio" name="r" value="b"></label>' .
- '</form>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual($page->getField(new SimpleByLabel('A')), 'a');
- $this->assertTrue($page->setField(new SimpleBylabel('B'), 'b'));
- $this->assertEqual($page->getField(new SimpleByLabel('B')), 'b');
- }
-
- function testCanParseInputsWithAllKindsOfAttributeQuoting() {
- $raw = '<form>' .
- '<input type="checkbox" name=\'first\' value=one checked></input>' .
- '<input type=checkbox name="second" value="two"></input>' .
- '<input type=checkbox name="third" value=\'three\' checked="checked" />' .
- '</form>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual($page->getField(new SimpleByName('first')), 'one');
- $this->assertEqual($page->getField(new SimpleByName('second')), false);
- $this->assertEqual($page->getField(new SimpleByName('third')), 'three');
- }
-
- function urlToString($url) {
- return $url->asString();
- }
-
- function assertSameFrameset($actual, $expected) {
- $this->assertIdentical(array_map(array($this, 'urlToString'), $actual),
- array_map(array($this, 'urlToString'), $expected));
- }
-}
-
-class TestOfParsingUsingPhpParser extends TestOfParsing {
-
- function whenVisiting($url, $content) {
- $response = new MockSimpleHttpResponse();
- $response->setReturnValue('getContent', $content);
- $response->setReturnValue('getUrl', new SimpleUrl($url));
- $builder = new SimplePhpPageBuilder();
- return $builder->parse($response);
- }
-
- function testNastyTitle() {
- $page = $this->whenVisiting('http://host',
- '<html><head><Title> <b>Me&amp;Me </TITLE></b></head></html>');
- $this->assertEqual($page->getTitle(), "Me&Me");
- }
-
- function testLabelShouldStopAtClosingLabelTag() {
- $raw = '<form><label>start<textarea id=3 name="c" wrap="hard">stuff</textarea>end</label>stuff</form>';
- $page = $this->whenVisiting('http://host', $raw);
- $this->assertEqual($page->getField(new SimpleByLabel('startend')), 'stuff');
- }
-}
-
-class TestOfParsingUsingTidyParser extends TestOfParsing {
-
- function skip() {
- $this->skipUnless(extension_loaded('tidy'), 'Install \'tidy\' php extension to enable html tidy based parser');
- }
-
- function whenVisiting($url, $content) {
- $response = new MockSimpleHttpResponse();
- $response->setReturnValue('getContent', $content);
- $response->setReturnValue('getUrl', new SimpleUrl($url));
- $builder = new SimpleTidyPageBuilder();
- return $builder->parse($response);
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/php_parser_test.php b/3rdparty/simpletest/test/php_parser_test.php
deleted file mode 100644
index d95c7d06a60..00000000000
--- a/3rdparty/simpletest/test/php_parser_test.php
+++ /dev/null
@@ -1,489 +0,0 @@
-<?php
-// $Id: php_parser_test.php 1911 2009-07-29 16:38:04Z lastcraft $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../php_parser.php');
-require_once(dirname(__FILE__) . '/../tag.php');
-Mock::generate('SimplePage');
-Mock::generate('SimplePhpPageBuilder');
-Mock::generate('SimpleHttpResponse');
-Mock::generatePartial(
- 'SimplePhpPageBuilder',
- 'PartialSimplePhpPageBuilder',
- array('createPage', 'createParser'));
-Mock::generate('SimpleHtmlSaxParser');
-Mock::generate('SimplePhpPageBuilder');
-
-class TestOfParallelRegex extends UnitTestCase {
-
- function testNoPatterns() {
- $regex = new ParallelRegex(false);
- $this->assertFalse($regex->match("Hello", $match));
- $this->assertEqual($match, "");
- }
-
- function testNoSubject() {
- $regex = new ParallelRegex(false);
- $regex->addPattern(".*");
- $this->assertTrue($regex->match("", $match));
- $this->assertEqual($match, "");
- }
-
- function testMatchAll() {
- $regex = new ParallelRegex(false);
- $regex->addPattern(".*");
- $this->assertTrue($regex->match("Hello", $match));
- $this->assertEqual($match, "Hello");
- }
-
- function testCaseSensitive() {
- $regex = new ParallelRegex(true);
- $regex->addPattern("abc");
- $this->assertTrue($regex->match("abcdef", $match));
- $this->assertEqual($match, "abc");
- $this->assertTrue($regex->match("AAABCabcdef", $match));
- $this->assertEqual($match, "abc");
- }
-
- function testCaseInsensitive() {
- $regex = new ParallelRegex(false);
- $regex->addPattern("abc");
- $this->assertTrue($regex->match("abcdef", $match));
- $this->assertEqual($match, "abc");
- $this->assertTrue($regex->match("AAABCabcdef", $match));
- $this->assertEqual($match, "ABC");
- }
-
- function testMatchMultiple() {
- $regex = new ParallelRegex(true);
- $regex->addPattern("abc");
- $regex->addPattern("ABC");
- $this->assertTrue($regex->match("abcdef", $match));
- $this->assertEqual($match, "abc");
- $this->assertTrue($regex->match("AAABCabcdef", $match));
- $this->assertEqual($match, "ABC");
- $this->assertFalse($regex->match("Hello", $match));
- }
-
- function testPatternLabels() {
- $regex = new ParallelRegex(false);
- $regex->addPattern("abc", "letter");
- $regex->addPattern("123", "number");
- $this->assertIdentical($regex->match("abcdef", $match), "letter");
- $this->assertEqual($match, "abc");
- $this->assertIdentical($regex->match("0123456789", $match), "number");
- $this->assertEqual($match, "123");
- }
-}
-
-class TestOfStateStack extends UnitTestCase {
-
- function testStartState() {
- $stack = new SimpleStateStack("one");
- $this->assertEqual($stack->getCurrent(), "one");
- }
-
- function testExhaustion() {
- $stack = new SimpleStateStack("one");
- $this->assertFalse($stack->leave());
- }
-
- function testStateMoves() {
- $stack = new SimpleStateStack("one");
- $stack->enter("two");
- $this->assertEqual($stack->getCurrent(), "two");
- $stack->enter("three");
- $this->assertEqual($stack->getCurrent(), "three");
- $this->assertTrue($stack->leave());
- $this->assertEqual($stack->getCurrent(), "two");
- $stack->enter("third");
- $this->assertEqual($stack->getCurrent(), "third");
- $this->assertTrue($stack->leave());
- $this->assertTrue($stack->leave());
- $this->assertEqual($stack->getCurrent(), "one");
- }
-}
-
-class TestParser {
-
- function accept() {
- }
-
- function a() {
- }
-
- function b() {
- }
-}
-Mock::generate('TestParser');
-
-class TestOfLexer extends UnitTestCase {
-
- function testEmptyPage() {
- $handler = new MockTestParser();
- $handler->expectNever("accept");
- $handler->setReturnValue("accept", true);
- $handler->expectNever("accept");
- $handler->setReturnValue("accept", true);
- $lexer = new SimpleLexer($handler);
- $lexer->addPattern("a+");
- $this->assertTrue($lexer->parse(""));
- }
-
- function testSinglePattern() {
- $handler = new MockTestParser();
- $handler->expectAt(0, "accept", array("aaa", LEXER_MATCHED));
- $handler->expectAt(1, "accept", array("x", LEXER_UNMATCHED));
- $handler->expectAt(2, "accept", array("a", LEXER_MATCHED));
- $handler->expectAt(3, "accept", array("yyy", LEXER_UNMATCHED));
- $handler->expectAt(4, "accept", array("a", LEXER_MATCHED));
- $handler->expectAt(5, "accept", array("x", LEXER_UNMATCHED));
- $handler->expectAt(6, "accept", array("aaa", LEXER_MATCHED));
- $handler->expectAt(7, "accept", array("z", LEXER_UNMATCHED));
- $handler->expectCallCount("accept", 8);
- $handler->setReturnValue("accept", true);
- $lexer = new SimpleLexer($handler);
- $lexer->addPattern("a+");
- $this->assertTrue($lexer->parse("aaaxayyyaxaaaz"));
- }
-
- function testMultiplePattern() {
- $handler = new MockTestParser();
- $target = array("a", "b", "a", "bb", "x", "b", "a", "xxxxxx", "a", "x");
- for ($i = 0; $i < count($target); $i++) {
- $handler->expectAt($i, "accept", array($target[$i], '*'));
- }
- $handler->expectCallCount("accept", count($target));
- $handler->setReturnValue("accept", true);
- $lexer = new SimpleLexer($handler);
- $lexer->addPattern("a+");
- $lexer->addPattern("b+");
- $this->assertTrue($lexer->parse("ababbxbaxxxxxxax"));
- }
-}
-
-class TestOfLexerModes extends UnitTestCase {
-
- function testIsolatedPattern() {
- $handler = new MockTestParser();
- $handler->expectAt(0, "a", array("a", LEXER_MATCHED));
- $handler->expectAt(1, "a", array("b", LEXER_UNMATCHED));
- $handler->expectAt(2, "a", array("aa", LEXER_MATCHED));
- $handler->expectAt(3, "a", array("bxb", LEXER_UNMATCHED));
- $handler->expectAt(4, "a", array("aaa", LEXER_MATCHED));
- $handler->expectAt(5, "a", array("x", LEXER_UNMATCHED));
- $handler->expectAt(6, "a", array("aaaa", LEXER_MATCHED));
- $handler->expectAt(7, "a", array("x", LEXER_UNMATCHED));
- $handler->expectCallCount("a", 8);
- $handler->setReturnValue("a", true);
- $lexer = new SimpleLexer($handler, "a");
- $lexer->addPattern("a+", "a");
- $lexer->addPattern("b+", "b");
- $this->assertTrue($lexer->parse("abaabxbaaaxaaaax"));
- }
-
- function testModeChange() {
- $handler = new MockTestParser();
- $handler->expectAt(0, "a", array("a", LEXER_MATCHED));
- $handler->expectAt(1, "a", array("b", LEXER_UNMATCHED));
- $handler->expectAt(2, "a", array("aa", LEXER_MATCHED));
- $handler->expectAt(3, "a", array("b", LEXER_UNMATCHED));
- $handler->expectAt(4, "a", array("aaa", LEXER_MATCHED));
- $handler->expectAt(0, "b", array(":", LEXER_ENTER));
- $handler->expectAt(1, "b", array("a", LEXER_UNMATCHED));
- $handler->expectAt(2, "b", array("b", LEXER_MATCHED));
- $handler->expectAt(3, "b", array("a", LEXER_UNMATCHED));
- $handler->expectAt(4, "b", array("bb", LEXER_MATCHED));
- $handler->expectAt(5, "b", array("a", LEXER_UNMATCHED));
- $handler->expectAt(6, "b", array("bbb", LEXER_MATCHED));
- $handler->expectAt(7, "b", array("a", LEXER_UNMATCHED));
- $handler->expectCallCount("a", 5);
- $handler->expectCallCount("b", 8);
- $handler->setReturnValue("a", true);
- $handler->setReturnValue("b", true);
- $lexer = new SimpleLexer($handler, "a");
- $lexer->addPattern("a+", "a");
- $lexer->addEntryPattern(":", "a", "b");
- $lexer->addPattern("b+", "b");
- $this->assertTrue($lexer->parse("abaabaaa:ababbabbba"));
- }
-
- function testNesting() {
- $handler = new MockTestParser();
- $handler->setReturnValue("a", true);
- $handler->setReturnValue("b", true);
- $handler->expectAt(0, "a", array("aa", LEXER_MATCHED));
- $handler->expectAt(1, "a", array("b", LEXER_UNMATCHED));
- $handler->expectAt(2, "a", array("aa", LEXER_MATCHED));
- $handler->expectAt(3, "a", array("b", LEXER_UNMATCHED));
- $handler->expectAt(0, "b", array("(", LEXER_ENTER));
- $handler->expectAt(1, "b", array("bb", LEXER_MATCHED));
- $handler->expectAt(2, "b", array("a", LEXER_UNMATCHED));
- $handler->expectAt(3, "b", array("bb", LEXER_MATCHED));
- $handler->expectAt(4, "b", array(")", LEXER_EXIT));
- $handler->expectAt(4, "a", array("aa", LEXER_MATCHED));
- $handler->expectAt(5, "a", array("b", LEXER_UNMATCHED));
- $handler->expectCallCount("a", 6);
- $handler->expectCallCount("b", 5);
- $lexer = new SimpleLexer($handler, "a");
- $lexer->addPattern("a+", "a");
- $lexer->addEntryPattern("(", "a", "b");
- $lexer->addPattern("b+", "b");
- $lexer->addExitPattern(")", "b");
- $this->assertTrue($lexer->parse("aabaab(bbabb)aab"));
- }
-
- function testSingular() {
- $handler = new MockTestParser();
- $handler->setReturnValue("a", true);
- $handler->setReturnValue("b", true);
- $handler->expectAt(0, "a", array("aa", LEXER_MATCHED));
- $handler->expectAt(1, "a", array("aa", LEXER_MATCHED));
- $handler->expectAt(2, "a", array("xx", LEXER_UNMATCHED));
- $handler->expectAt(3, "a", array("xx", LEXER_UNMATCHED));
- $handler->expectAt(0, "b", array("b", LEXER_SPECIAL));
- $handler->expectAt(1, "b", array("bbb", LEXER_SPECIAL));
- $handler->expectCallCount("a", 4);
- $handler->expectCallCount("b", 2);
- $lexer = new SimpleLexer($handler, "a");
- $lexer->addPattern("a+", "a");
- $lexer->addSpecialPattern("b+", "a", "b");
- $this->assertTrue($lexer->parse("aabaaxxbbbxx"));
- }
-
- function testUnwindTooFar() {
- $handler = new MockTestParser();
- $handler->setReturnValue("a", true);
- $handler->expectAt(0, "a", array("aa", LEXER_MATCHED));
- $handler->expectAt(1, "a", array(")", LEXER_EXIT));
- $handler->expectCallCount("a", 2);
- $lexer = new SimpleLexer($handler, "a");
- $lexer->addPattern("a+", "a");
- $lexer->addExitPattern(")", "a");
- $this->assertFalse($lexer->parse("aa)aa"));
- }
-}
-
-class TestOfLexerHandlers extends UnitTestCase {
-
- function testModeMapping() {
- $handler = new MockTestParser();
- $handler->setReturnValue("a", true);
- $handler->expectAt(0, "a", array("aa", LEXER_MATCHED));
- $handler->expectAt(1, "a", array("(", LEXER_ENTER));
- $handler->expectAt(2, "a", array("bb", LEXER_MATCHED));
- $handler->expectAt(3, "a", array("a", LEXER_UNMATCHED));
- $handler->expectAt(4, "a", array("bb", LEXER_MATCHED));
- $handler->expectAt(5, "a", array(")", LEXER_EXIT));
- $handler->expectAt(6, "a", array("b", LEXER_UNMATCHED));
- $handler->expectCallCount("a", 7);
- $lexer = new SimpleLexer($handler, "mode_a");
- $lexer->addPattern("a+", "mode_a");
- $lexer->addEntryPattern("(", "mode_a", "mode_b");
- $lexer->addPattern("b+", "mode_b");
- $lexer->addExitPattern(")", "mode_b");
- $lexer->mapHandler("mode_a", "a");
- $lexer->mapHandler("mode_b", "a");
- $this->assertTrue($lexer->parse("aa(bbabb)b"));
- }
-}
-
-class TestOfSimpleHtmlLexer extends UnitTestCase {
-
- function &createParser() {
- $parser = new MockSimpleHtmlSaxParser();
- $parser->setReturnValue('acceptStartToken', true);
- $parser->setReturnValue('acceptEndToken', true);
- $parser->setReturnValue('acceptAttributeToken', true);
- $parser->setReturnValue('acceptEntityToken', true);
- $parser->setReturnValue('acceptTextToken', true);
- $parser->setReturnValue('ignore', true);
- return $parser;
- }
-
- function testNoContent() {
- $parser = $this->createParser();
- $parser->expectNever('acceptStartToken');
- $parser->expectNever('acceptEndToken');
- $parser->expectNever('acceptAttributeToken');
- $parser->expectNever('acceptEntityToken');
- $parser->expectNever('acceptTextToken');
- $lexer = new SimpleHtmlLexer($parser);
- $this->assertTrue($lexer->parse(''));
- }
-
- function testUninteresting() {
- $parser = $this->createParser();
- $parser->expectOnce('acceptTextToken', array('<html></html>', '*'));
- $lexer = new SimpleHtmlLexer($parser);
- $this->assertTrue($lexer->parse('<html></html>'));
- }
-
- function testSkipCss() {
- $parser = $this->createParser();
- $parser->expectNever('acceptTextToken');
- $parser->expectAtLeastOnce('ignore');
- $lexer = new SimpleHtmlLexer($parser);
- $this->assertTrue($lexer->parse("<style>Lot's of styles</style>"));
- }
-
- function testSkipJavaScript() {
- $parser = $this->createParser();
- $parser->expectNever('acceptTextToken');
- $parser->expectAtLeastOnce('ignore');
- $lexer = new SimpleHtmlLexer($parser);
- $this->assertTrue($lexer->parse("<SCRIPT>Javascript code {';:^%^%£$'@\"*(}</SCRIPT>"));
- }
-
- function testSkipHtmlComments() {
- $parser = $this->createParser();
- $parser->expectNever('acceptTextToken');
- $parser->expectAtLeastOnce('ignore');
- $lexer = new SimpleHtmlLexer($parser);
- $this->assertTrue($lexer->parse("<!-- <title>title</title><style>styles</style> -->"));
- }
-
- function testTagWithNoAttributes() {
- $parser = $this->createParser();
- $parser->expectAt(0, 'acceptStartToken', array('<title', '*'));
- $parser->expectAt(1, 'acceptStartToken', array('>', '*'));
- $parser->expectCallCount('acceptStartToken', 2);
- $parser->expectOnce('acceptTextToken', array('Hello', '*'));
- $parser->expectOnce('acceptEndToken', array('</title>', '*'));
- $lexer = new SimpleHtmlLexer($parser);
- $this->assertTrue($lexer->parse('<title>Hello</title>'));
- }
-
- function testTagWithAttributes() {
- $parser = $this->createParser();
- $parser->expectOnce('acceptTextToken', array('label', '*'));
- $parser->expectAt(0, 'acceptStartToken', array('<a', '*'));
- $parser->expectAt(1, 'acceptStartToken', array('href', '*'));
- $parser->expectAt(2, 'acceptStartToken', array('>', '*'));
- $parser->expectCallCount('acceptStartToken', 3);
- $parser->expectAt(0, 'acceptAttributeToken', array('= "', '*'));
- $parser->expectAt(1, 'acceptAttributeToken', array('here.html', '*'));
- $parser->expectAt(2, 'acceptAttributeToken', array('"', '*'));
- $parser->expectCallCount('acceptAttributeToken', 3);
- $parser->expectOnce('acceptEndToken', array('</a>', '*'));
- $lexer = new SimpleHtmlLexer($parser);
- $this->assertTrue($lexer->parse('<a href = "here.html">label</a>'));
- }
-}
-
-class TestOfHtmlSaxParser extends UnitTestCase {
-
- function createListener() {
- $listener = new MockSimplePhpPageBuilder();
- $listener->setReturnValue('startElement', true);
- $listener->setReturnValue('addContent', true);
- $listener->setReturnValue('endElement', true);
- return $listener;
- }
-
- function testFramesetTag() {
- $listener = $this->createListener();
- $listener->expectOnce('startElement', array('frameset', array()));
- $listener->expectOnce('addContent', array('Frames'));
- $listener->expectOnce('endElement', array('frameset'));
- $parser = new SimpleHtmlSaxParser($listener);
- $this->assertTrue($parser->parse('<frameset>Frames</frameset>'));
- }
-
- function testTagWithUnquotedAttributes() {
- $listener = $this->createListener();
- $listener->expectOnce(
- 'startElement',
- array('input', array('name' => 'a.b.c', 'value' => 'd')));
- $parser = new SimpleHtmlSaxParser($listener);
- $this->assertTrue($parser->parse('<input name=a.b.c value = d>'));
- }
-
- function testTagInsideContent() {
- $listener = $this->createListener();
- $listener->expectOnce('startElement', array('a', array()));
- $listener->expectAt(0, 'addContent', array('<html>'));
- $listener->expectAt(1, 'addContent', array('</html>'));
- $parser = new SimpleHtmlSaxParser($listener);
- $this->assertTrue($parser->parse('<html><a></a></html>'));
- }
-
- function testTagWithInternalContent() {
- $listener = $this->createListener();
- $listener->expectOnce('startElement', array('a', array()));
- $listener->expectOnce('addContent', array('label'));
- $listener->expectOnce('endElement', array('a'));
- $parser = new SimpleHtmlSaxParser($listener);
- $this->assertTrue($parser->parse('<a>label</a>'));
- }
-
- function testLinkAddress() {
- $listener = $this->createListener();
- $listener->expectOnce('startElement', array('a', array('href' => 'here.html')));
- $listener->expectOnce('addContent', array('label'));
- $listener->expectOnce('endElement', array('a'));
- $parser = new SimpleHtmlSaxParser($listener);
- $this->assertTrue($parser->parse("<a href = 'here.html'>label</a>"));
- }
-
- function testEncodedAttribute() {
- $listener = $this->createListener();
- $listener->expectOnce('startElement', array('a', array('href' => 'here&there.html')));
- $listener->expectOnce('addContent', array('label'));
- $listener->expectOnce('endElement', array('a'));
- $parser = new SimpleHtmlSaxParser($listener);
- $this->assertTrue($parser->parse("<a href = 'here&amp;there.html'>label</a>"));
- }
-
- function testTagWithId() {
- $listener = $this->createListener();
- $listener->expectOnce('startElement', array('a', array('id' => '0')));
- $listener->expectOnce('addContent', array('label'));
- $listener->expectOnce('endElement', array('a'));
- $parser = new SimpleHtmlSaxParser($listener);
- $this->assertTrue($parser->parse('<a id="0">label</a>'));
- }
-
- function testTagWithEmptyAttributes() {
- $listener = $this->createListener();
- $listener->expectOnce(
- 'startElement',
- array('option', array('value' => '', 'selected' => '')));
- $listener->expectOnce('addContent', array('label'));
- $listener->expectOnce('endElement', array('option'));
- $parser = new SimpleHtmlSaxParser($listener);
- $this->assertTrue($parser->parse('<option value="" selected>label</option>'));
- }
-
- function testComplexTagWithLotsOfCaseVariations() {
- $listener = $this->createListener();
- $listener->expectOnce(
- 'startElement',
- array('a', array('href' => 'here.html', 'style' => "'cool'")));
- $listener->expectOnce('addContent', array('label'));
- $listener->expectOnce('endElement', array('a'));
- $parser = new SimpleHtmlSaxParser($listener);
- $this->assertTrue($parser->parse('<A HREF = \'here.html\' Style="\'cool\'">label</A>'));
- }
-
- function testXhtmlSelfClosingTag() {
- $listener = $this->createListener();
- $listener->expectOnce(
- 'startElement',
- array('input', array('type' => 'submit', 'name' => 'N', 'value' => 'V')));
- $parser = new SimpleHtmlSaxParser($listener);
- $this->assertTrue($parser->parse('<input type="submit" name="N" value="V" />'));
- }
-
- function testNestedFrameInFrameset() {
- $listener = $this->createListener();
- $listener->expectAt(0, 'startElement', array('frameset', array()));
- $listener->expectAt(1, 'startElement', array('frame', array('src' => 'frame.html')));
- $listener->expectCallCount('startElement', 2);
- $listener->expectOnce('addContent', array('<noframes>Hello</noframes>'));
- $listener->expectOnce('endElement', array('frameset'));
- $parser = new SimpleHtmlSaxParser($listener);
- $this->assertTrue($parser->parse(
- '<frameset><frame src="frame.html"><noframes>Hello</noframes></frameset>'));
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/recorder_test.php b/3rdparty/simpletest/test/recorder_test.php
deleted file mode 100644
index fdae4c1cccc..00000000000
--- a/3rdparty/simpletest/test/recorder_test.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-// $Id: test.php 1500 2007-04-29 14:33:31Z pp11 $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../recorder.php');
-
-class TestOfRecorder extends UnitTestCase {
-
- function testContentOfRecorderWithOnePassAndOneFailure() {
- $test = new TestSuite();
- $test->addFile(dirname(__FILE__) . '/support/recorder_sample.php');
- $recorder = new Recorder(new SimpleReporter());
- $test->run($recorder);
- $this->assertEqual(count($recorder->results), 2);
- $this->assertIsA($recorder->results[0], 'SimpleResultOfPass');
- $this->assertEqual('testTrueIsTrue', array_pop($recorder->results[0]->breadcrumb));
- $this->assertPattern('/ at \[.*\Wrecorder_sample\.php line 7\]/', $recorder->results[0]->message);
- $this->assertIsA($recorder->results[1], 'SimpleResultOfFail');
- $this->assertEqual('testFalseIsTrue', array_pop($recorder->results[1]->breadcrumb));
- $this->assertPattern("/Expected false, got \[Boolean: true\] at \[.*\Wrecorder_sample\.php line 11\]/",
- $recorder->results[1]->message);
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/reflection_php5_test.php b/3rdparty/simpletest/test/reflection_php5_test.php
deleted file mode 100644
index d9f46e6db78..00000000000
--- a/3rdparty/simpletest/test/reflection_php5_test.php
+++ /dev/null
@@ -1,263 +0,0 @@
-<?php
-// $Id: reflection_php5_test.php 1778 2008-04-21 16:13:08Z edwardzyang $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../reflection_php5.php');
-
-class AnyOldLeafClass {
- function aMethod() { }
-}
-
-abstract class AnyOldClass {
- function aMethod() { }
-}
-
-class AnyOldLeafClassWithAFinal {
- final function aMethod() { }
-}
-
-interface AnyOldInterface {
- function aMethod();
-}
-
-interface AnyOldArgumentInterface {
- function aMethod(AnyOldInterface $argument);
-}
-
-interface AnyDescendentInterface extends AnyOldInterface {
-}
-
-class AnyOldImplementation implements AnyOldInterface {
- function aMethod() { }
- function extraMethod() { }
-}
-
-abstract class AnyAbstractImplementation implements AnyOldInterface {
-}
-
-abstract class AnotherOldAbstractClass {
- protected abstract function aMethod(AnyOldInterface $argument);
-}
-
-class AnyOldSubclass extends AnyOldImplementation { }
-
-class AnyOldArgumentClass {
- function aMethod($argument) { }
-}
-
-class AnyOldArgumentImplementation implements AnyOldArgumentInterface {
- function aMethod(AnyOldInterface $argument) { }
-}
-
-class AnyOldTypeHintedClass implements AnyOldArgumentInterface {
- function aMethod(AnyOldInterface $argument) { }
-}
-
-class AnyDescendentImplementation implements AnyDescendentInterface {
- function aMethod() { }
-}
-
-class AnyOldOverloadedClass {
- function __isset($key) { }
- function __unset($key) { }
-}
-
-class AnyOldClassWithStaticMethods {
- static function aStatic() { }
- static function aStaticWithParameters($arg1, $arg2) { }
-}
-
-abstract class AnyOldAbstractClassWithAbstractMethods {
- abstract function anAbstract();
- abstract function anAbstractWithParameter($foo);
- abstract function anAbstractWithMultipleParameters($foo, $bar);
-}
-
-class TestOfReflection extends UnitTestCase {
-
- function testClassExistence() {
- $reflection = new SimpleReflection('AnyOldLeafClass');
- $this->assertTrue($reflection->classOrInterfaceExists());
- $this->assertTrue($reflection->classOrInterfaceExistsSansAutoload());
- $this->assertFalse($reflection->isAbstract());
- $this->assertFalse($reflection->isInterface());
- }
-
- function testClassNonExistence() {
- $reflection = new SimpleReflection('UnknownThing');
- $this->assertFalse($reflection->classOrInterfaceExists());
- $this->assertFalse($reflection->classOrInterfaceExistsSansAutoload());
- }
-
- function testDetectionOfAbstractClass() {
- $reflection = new SimpleReflection('AnyOldClass');
- $this->assertTrue($reflection->isAbstract());
- }
-
- function testDetectionOfFinalMethods() {
- $reflection = new SimpleReflection('AnyOldClass');
- $this->assertFalse($reflection->hasFinal());
- $reflection = new SimpleReflection('AnyOldLeafClassWithAFinal');
- $this->assertTrue($reflection->hasFinal());
- }
-
- function testFindingParentClass() {
- $reflection = new SimpleReflection('AnyOldSubclass');
- $this->assertEqual($reflection->getParent(), 'AnyOldImplementation');
- }
-
- function testInterfaceExistence() {
- $reflection = new SimpleReflection('AnyOldInterface');
- $this->assertTrue($reflection->classOrInterfaceExists());
- $this->assertTrue($reflection->classOrInterfaceExistsSansAutoload());
- $this->assertTrue($reflection->isInterface());
- }
-
- function testMethodsListFromClass() {
- $reflection = new SimpleReflection('AnyOldClass');
- $this->assertIdentical($reflection->getMethods(), array('aMethod'));
- }
-
- function testMethodsListFromInterface() {
- $reflection = new SimpleReflection('AnyOldInterface');
- $this->assertIdentical($reflection->getMethods(), array('aMethod'));
- $this->assertIdentical($reflection->getInterfaceMethods(), array('aMethod'));
- }
-
- function testMethodsComeFromDescendentInterfacesASWell() {
- $reflection = new SimpleReflection('AnyDescendentInterface');
- $this->assertIdentical($reflection->getMethods(), array('aMethod'));
- }
-
- function testCanSeparateInterfaceMethodsFromOthers() {
- $reflection = new SimpleReflection('AnyOldImplementation');
- $this->assertIdentical($reflection->getMethods(), array('aMethod', 'extraMethod'));
- $this->assertIdentical($reflection->getInterfaceMethods(), array('aMethod'));
- }
-
- function testMethodsComeFromDescendentInterfacesInAbstractClass() {
- $reflection = new SimpleReflection('AnyAbstractImplementation');
- $this->assertIdentical($reflection->getMethods(), array('aMethod'));
- }
-
- function testInterfaceHasOnlyItselfToImplement() {
- $reflection = new SimpleReflection('AnyOldInterface');
- $this->assertEqual(
- $reflection->getInterfaces(),
- array('AnyOldInterface'));
- }
-
- function testInterfacesListedForClass() {
- $reflection = new SimpleReflection('AnyOldImplementation');
- $this->assertEqual(
- $reflection->getInterfaces(),
- array('AnyOldInterface'));
- }
-
- function testInterfacesListedForSubclass() {
- $reflection = new SimpleReflection('AnyOldSubclass');
- $this->assertEqual(
- $reflection->getInterfaces(),
- array('AnyOldInterface'));
- }
-
- function testNoParameterCreationWhenNoInterface() {
- $reflection = new SimpleReflection('AnyOldArgumentClass');
- $function = $reflection->getSignature('aMethod');
- if (version_compare(phpversion(), '5.0.2', '<=')) {
- $this->assertEqual('function amethod($argument)', strtolower($function));
- } else {
- $this->assertEqual('function aMethod($argument)', $function);
- }
- }
-
- function testParameterCreationWithoutTypeHinting() {
- $reflection = new SimpleReflection('AnyOldArgumentImplementation');
- $function = $reflection->getSignature('aMethod');
- if (version_compare(phpversion(), '5.0.2', '<=')) {
- $this->assertEqual('function amethod(AnyOldInterface $argument)', $function);
- } else {
- $this->assertEqual('function aMethod(AnyOldInterface $argument)', $function);
- }
- }
-
- function testParameterCreationForTypeHinting() {
- $reflection = new SimpleReflection('AnyOldTypeHintedClass');
- $function = $reflection->getSignature('aMethod');
- if (version_compare(phpversion(), '5.0.2', '<=')) {
- $this->assertEqual('function amethod(AnyOldInterface $argument)', $function);
- } else {
- $this->assertEqual('function aMethod(AnyOldInterface $argument)', $function);
- }
- }
-
- function testIssetFunctionSignature() {
- $reflection = new SimpleReflection('AnyOldOverloadedClass');
- $function = $reflection->getSignature('__isset');
- $this->assertEqual('function __isset($key)', $function);
- }
-
- function testUnsetFunctionSignature() {
- $reflection = new SimpleReflection('AnyOldOverloadedClass');
- $function = $reflection->getSignature('__unset');
- $this->assertEqual('function __unset($key)', $function);
- }
-
- function testProperlyReflectsTheFinalInterfaceWhenObjectImplementsAnExtendedInterface() {
- $reflection = new SimpleReflection('AnyDescendentImplementation');
- $interfaces = $reflection->getInterfaces();
- $this->assertEqual(1, count($interfaces));
- $this->assertEqual('AnyDescendentInterface', array_shift($interfaces));
- }
-
- function testCreatingSignatureForAbstractMethod() {
- $reflection = new SimpleReflection('AnotherOldAbstractClass');
- $this->assertEqual($reflection->getSignature('aMethod'), 'function aMethod(AnyOldInterface $argument)');
- }
-
- function testCanProperlyGenerateStaticMethodSignatures() {
- $reflection = new SimpleReflection('AnyOldClassWithStaticMethods');
- $this->assertEqual('static function aStatic()', $reflection->getSignature('aStatic'));
- $this->assertEqual(
- 'static function aStaticWithParameters($arg1, $arg2)',
- $reflection->getSignature('aStaticWithParameters')
- );
- }
-}
-
-class TestOfReflectionWithTypeHints extends UnitTestCase {
- function skip() {
- $this->skipIf(version_compare(phpversion(), '5.1.0', '<'), 'Reflection with type hints only tested for PHP 5.1.0 and above');
- }
-
- function testParameterCreationForTypeHintingWithArray() {
- eval('interface AnyOldArrayTypeHintedInterface {
- function amethod(array $argument);
- }
- class AnyOldArrayTypeHintedClass implements AnyOldArrayTypeHintedInterface {
- function amethod(array $argument) {}
- }');
- $reflection = new SimpleReflection('AnyOldArrayTypeHintedClass');
- $function = $reflection->getSignature('amethod');
- $this->assertEqual('function amethod(array $argument)', $function);
- }
-}
-
-class TestOfAbstractsWithAbstractMethods extends UnitTestCase {
- function testCanProperlyGenerateAbstractMethods() {
- $reflection = new SimpleReflection('AnyOldAbstractClassWithAbstractMethods');
- $this->assertEqual(
- 'function anAbstract()',
- $reflection->getSignature('anAbstract')
- );
- $this->assertEqual(
- 'function anAbstractWithParameter($foo)',
- $reflection->getSignature('anAbstractWithParameter')
- );
- $this->assertEqual(
- 'function anAbstractWithMultipleParameters($foo, $bar)',
- $reflection->getSignature('anAbstractWithMultipleParameters')
- );
- }
-}
-
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/remote_test.php b/3rdparty/simpletest/test/remote_test.php
deleted file mode 100644
index 5f3f96a4de9..00000000000
--- a/3rdparty/simpletest/test/remote_test.php
+++ /dev/null
@@ -1,19 +0,0 @@
-<?php
-// $Id: remote_test.php 1759 2008-04-15 02:37:07Z edwardzyang $
-require_once('../remote.php');
-require_once('../reporter.php');
-
-// The following URL will depend on your own installation.
-if (isset($_SERVER['SCRIPT_URI'])) {
- $base_uri = $_SERVER['SCRIPT_URI'];
-} elseif (isset($_SERVER['HTTP_HOST']) && isset($_SERVER['PHP_SELF'])) {
- $base_uri = 'http://'. $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'];
-};
-$test_url = str_replace('remote_test.php', 'visual_test.php', $base_uri);
-
-$test = new TestSuite('Remote tests');
-$test->add(new RemoteTestCase($test_url . '?xml=yes', $test_url . '?xml=yes&dry=yes'));
-if (SimpleReporter::inCli()) {
- exit ($test->run(new TextReporter()) ? 0 : 1);
-}
-$test->run(new HtmlReporter());
diff --git a/3rdparty/simpletest/test/shell_test.php b/3rdparty/simpletest/test/shell_test.php
deleted file mode 100644
index d1d769a6795..00000000000
--- a/3rdparty/simpletest/test/shell_test.php
+++ /dev/null
@@ -1,38 +0,0 @@
-<?php
-// $Id: shell_test.php 1748 2008-04-14 01:50:41Z lastcraft $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../shell_tester.php');
-
-class TestOfShell extends UnitTestCase {
-
- function testEcho() {
- $shell = new SimpleShell();
- $this->assertIdentical($shell->execute('echo Hello'), 0);
- $this->assertPattern('/Hello/', $shell->getOutput());
- }
-
- function testBadCommand() {
- $shell = new SimpleShell();
- $this->assertNotEqual($ret = $shell->execute('blurgh! 2>&1'), 0);
- }
-}
-
-class TestOfShellTesterAndShell extends ShellTestCase {
-
- function testEcho() {
- $this->assertTrue($this->execute('echo Hello'));
- $this->assertExitCode(0);
- $this->assertoutput('Hello');
- }
-
- function testFileExistence() {
- $this->assertFileExists(dirname(__FILE__) . '/all_tests.php');
- $this->assertFileNotExists('wibble');
- }
-
- function testFilePatterns() {
- $this->assertFilePattern('/all[_ ]tests/i', dirname(__FILE__) . '/all_tests.php');
- $this->assertNoFilePattern('/sputnik/i', dirname(__FILE__) . '/all_tests.php');
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/shell_tester_test.php b/3rdparty/simpletest/test/shell_tester_test.php
deleted file mode 100644
index b12c602a39f..00000000000
--- a/3rdparty/simpletest/test/shell_tester_test.php
+++ /dev/null
@@ -1,42 +0,0 @@
-<?php
-// $Id: shell_tester_test.php 1787 2008-04-26 20:35:39Z pp11 $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../shell_tester.php');
-Mock::generate('SimpleShell');
-
-class TestOfShellTestCase extends ShellTestCase {
- private $mock_shell = false;
-
- function getShell() {
- return $this->mock_shell;
- }
-
- function testGenericEquality() {
- $this->assertEqual('a', 'a');
- $this->assertNotEqual('a', 'A');
- }
-
- function testExitCode() {
- $this->mock_shell = new MockSimpleShell();
- $this->mock_shell->setReturnValue('execute', 0);
- $this->mock_shell->expectOnce('execute', array('ls'));
- $this->assertTrue($this->execute('ls'));
- $this->assertExitCode(0);
- }
-
- function testOutput() {
- $this->mock_shell = new MockSimpleShell();
- $this->mock_shell->setReturnValue('execute', 0);
- $this->mock_shell->setReturnValue('getOutput', "Line 1\nLine 2\n");
- $this->assertOutput("Line 1\nLine 2\n");
- }
-
- function testOutputPatterns() {
- $this->mock_shell = new MockSimpleShell();
- $this->mock_shell->setReturnValue('execute', 0);
- $this->mock_shell->setReturnValue('getOutput', "Line 1\nLine 2\n");
- $this->assertOutputPattern('/line/i');
- $this->assertNoOutputPattern('/line 2/');
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/simpletest_test.php b/3rdparty/simpletest/test/simpletest_test.php
deleted file mode 100644
index daa65c6f472..00000000000
--- a/3rdparty/simpletest/test/simpletest_test.php
+++ /dev/null
@@ -1,58 +0,0 @@
-<?php
-// $Id: simpletest_test.php 1748 2008-04-14 01:50:41Z lastcraft $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../simpletest.php');
-
-SimpleTest::ignore('ShouldNeverBeRunEither');
-
-class ShouldNeverBeRun extends UnitTestCase {
- function testWithNoChanceOfSuccess() {
- $this->fail('Should be ignored');
- }
-}
-
-class ShouldNeverBeRunEither extends ShouldNeverBeRun { }
-
-class TestOfStackTrace extends UnitTestCase {
-
- function testCanFindAssertInTrace() {
- $trace = new SimpleStackTrace(array('assert'));
- $this->assertEqual(
- $trace->traceMethod(array(array(
- 'file' => '/my_test.php',
- 'line' => 24,
- 'function' => 'assertSomething'))),
- ' at [/my_test.php line 24]');
- }
-}
-
-class DummyResource { }
-
-class TestOfContext extends UnitTestCase {
-
- function testCurrentContextIsUnique() {
- $this->assertSame(
- SimpleTest::getContext(),
- SimpleTest::getContext());
- }
-
- function testContextHoldsCurrentTestCase() {
- $context = SimpleTest::getContext();
- $this->assertSame($this, $context->getTest());
- }
-
- function testResourceIsSingleInstanceWithContext() {
- $context = new SimpleTestContext();
- $this->assertSame(
- $context->get('DummyResource'),
- $context->get('DummyResource'));
- }
-
- function testClearingContextResetsResources() {
- $context = new SimpleTestContext();
- $resource = $context->get('DummyResource');
- $context->clear();
- $this->assertClone($resource, $context->get('DummyResource'));
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/site/file.html b/3rdparty/simpletest/test/site/file.html
deleted file mode 100644
index cc41aee1b8b..00000000000
--- a/3rdparty/simpletest/test/site/file.html
+++ /dev/null
@@ -1,6 +0,0 @@
-<html>
- <head><title>Link to SimpleTest</title></head>
- <body>
- <a href="http://simpletest.org/">Link to SimpleTest</a>
- </body>
-</html> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/socket_test.php b/3rdparty/simpletest/test/socket_test.php
deleted file mode 100644
index 729adda4960..00000000000
--- a/3rdparty/simpletest/test/socket_test.php
+++ /dev/null
@@ -1,25 +0,0 @@
-<?php
-// $Id: socket_test.php 1782 2008-04-25 17:09:06Z pp11 $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../socket.php');
-Mock::generate('SimpleSocket');
-
-class TestOfSimpleStickyError extends UnitTestCase {
-
- function testSettingError() {
- $error = new SimpleStickyError();
- $this->assertFalse($error->isError());
- $error->setError('Ouch');
- $this->assertTrue($error->isError());
- $this->assertEqual($error->getError(), 'Ouch');
- }
-
- function testClearingError() {
- $error = new SimpleStickyError();
- $error->setError('Ouch');
- $this->assertTrue($error->isError());
- $error->clearError();
- $this->assertFalse($error->isError());
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/support/collector/collectable.1 b/3rdparty/simpletest/test/support/collector/collectable.1
deleted file mode 100644
index e69de29bb2d..00000000000
--- a/3rdparty/simpletest/test/support/collector/collectable.1
+++ /dev/null
diff --git a/3rdparty/simpletest/test/support/collector/collectable.2 b/3rdparty/simpletest/test/support/collector/collectable.2
deleted file mode 100644
index e69de29bb2d..00000000000
--- a/3rdparty/simpletest/test/support/collector/collectable.2
+++ /dev/null
diff --git a/3rdparty/simpletest/test/support/empty_test_file.php b/3rdparty/simpletest/test/support/empty_test_file.php
deleted file mode 100644
index 31e3f7bed62..00000000000
--- a/3rdparty/simpletest/test/support/empty_test_file.php
+++ /dev/null
@@ -1,3 +0,0 @@
-<?php
-require_once(dirname(__FILE__) . '/../../autorun.php');
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/support/failing_test.php b/3rdparty/simpletest/test/support/failing_test.php
deleted file mode 100644
index 30f0d7507d9..00000000000
--- a/3rdparty/simpletest/test/support/failing_test.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-require_once(dirname(__FILE__) . '/../../autorun.php');
-
-class FailingTest extends UnitTestCase {
- function test_fail() {
- $this->assertEqual(1,2);
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/support/latin1_sample b/3rdparty/simpletest/test/support/latin1_sample
deleted file mode 100644
index 19035257766..00000000000
--- a/3rdparty/simpletest/test/support/latin1_sample
+++ /dev/null
@@ -1 +0,0 @@
-£¹²³¼½¾@¶øþðßæ«»¢µ \ No newline at end of file
diff --git a/3rdparty/simpletest/test/support/passing_test.php b/3rdparty/simpletest/test/support/passing_test.php
deleted file mode 100644
index b7863216353..00000000000
--- a/3rdparty/simpletest/test/support/passing_test.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-require_once(dirname(__FILE__) . '/../../autorun.php');
-
-class PassingTest extends UnitTestCase {
- function test_pass() {
- $this->assertEqual(2,2);
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/support/recorder_sample.php b/3rdparty/simpletest/test/support/recorder_sample.php
deleted file mode 100644
index 4f157f6b601..00000000000
--- a/3rdparty/simpletest/test/support/recorder_sample.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<?php
-// $Id: sample_test.php 1500 2007-04-29 14:33:31Z pp11 $
-require_once dirname(__FILE__) . '/../../autorun.php';
-
-class SampleTestForRecorder extends UnitTestCase {
- function testTrueIsTrue() {
- $this->assertTrue(true);
- }
-
- function testFalseIsTrue() {
- $this->assertFalse(true);
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/support/spl_examples.php b/3rdparty/simpletest/test/support/spl_examples.php
deleted file mode 100644
index 45add356c44..00000000000
--- a/3rdparty/simpletest/test/support/spl_examples.php
+++ /dev/null
@@ -1,15 +0,0 @@
-<?php
- // $Id: spl_examples.php 1262 2006-02-05 19:35:31Z lastcraft $
-
- class IteratorImplementation implements Iterator {
- function current() { }
- function next() { }
- function key() { }
- function valid() { }
- function rewind() { }
- }
-
- class IteratorAggregateImplementation implements IteratorAggregate {
- function getIterator() { }
- }
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/support/supplementary_upload_sample.txt b/3rdparty/simpletest/test/support/supplementary_upload_sample.txt
deleted file mode 100644
index d8aa9e81013..00000000000
--- a/3rdparty/simpletest/test/support/supplementary_upload_sample.txt
+++ /dev/null
@@ -1 +0,0 @@
-Some more text content \ No newline at end of file
diff --git a/3rdparty/simpletest/test/support/test1.php b/3rdparty/simpletest/test/support/test1.php
deleted file mode 100644
index b414586d642..00000000000
--- a/3rdparty/simpletest/test/support/test1.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-class test1 extends UnitTestCase {
- function test_pass(){
- $this->assertEqual(3,1+2, "pass1");
- }
-}
-?>
diff --git a/3rdparty/simpletest/test/support/upload_sample.txt b/3rdparty/simpletest/test/support/upload_sample.txt
deleted file mode 100644
index ec98d7c5e3f..00000000000
--- a/3rdparty/simpletest/test/support/upload_sample.txt
+++ /dev/null
@@ -1 +0,0 @@
-Sample for testing file upload \ No newline at end of file
diff --git a/3rdparty/simpletest/test/tag_test.php b/3rdparty/simpletest/test/tag_test.php
deleted file mode 100644
index 5e8a377f089..00000000000
--- a/3rdparty/simpletest/test/tag_test.php
+++ /dev/null
@@ -1,554 +0,0 @@
-<?php
-// $Id: tag_test.php 1748 2008-04-14 01:50:41Z lastcraft $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../tag.php');
-require_once(dirname(__FILE__) . '/../encoding.php');
-Mock::generate('SimpleMultipartEncoding');
-
-class TestOfTag extends UnitTestCase {
-
- function testStartValuesWithoutAdditionalContent() {
- $tag = new SimpleTitleTag(array('a' => '1', 'b' => ''));
- $this->assertEqual($tag->getTagName(), 'title');
- $this->assertIdentical($tag->getAttribute('a'), '1');
- $this->assertIdentical($tag->getAttribute('b'), '');
- $this->assertIdentical($tag->getAttribute('c'), false);
- $this->assertIdentical($tag->getContent(), '');
- }
-
- function testTitleContent() {
- $tag = new SimpleTitleTag(array());
- $this->assertTrue($tag->expectEndTag());
- $tag->addContent('Hello');
- $tag->addContent('World');
- $this->assertEqual($tag->getText(), 'HelloWorld');
- }
-
- function testMessyTitleContent() {
- $tag = new SimpleTitleTag(array());
- $this->assertTrue($tag->expectEndTag());
- $tag->addContent('<b>Hello</b>');
- $tag->addContent('<em>World</em>');
- $this->assertEqual($tag->getText(), 'HelloWorld');
- }
-
- function testTagWithNoEnd() {
- $tag = new SimpleTextTag(array());
- $this->assertFalse($tag->expectEndTag());
- }
-
- function testAnchorHref() {
- $tag = new SimpleAnchorTag(array('href' => 'http://here/'));
- $this->assertEqual($tag->getHref(), 'http://here/');
-
- $tag = new SimpleAnchorTag(array('href' => ''));
- $this->assertIdentical($tag->getAttribute('href'), '');
- $this->assertIdentical($tag->getHref(), '');
-
- $tag = new SimpleAnchorTag(array());
- $this->assertIdentical($tag->getAttribute('href'), false);
- $this->assertIdentical($tag->getHref(), '');
- }
-
- function testIsIdMatchesIdAttribute() {
- $tag = new SimpleAnchorTag(array('href' => 'http://here/', 'id' => 7));
- $this->assertIdentical($tag->getAttribute('id'), '7');
- $this->assertTrue($tag->isId(7));
- }
-}
-
-class TestOfWidget extends UnitTestCase {
-
- function testTextEmptyDefault() {
- $tag = new SimpleTextTag(array('type' => 'text'));
- $this->assertIdentical($tag->getDefault(), '');
- $this->assertIdentical($tag->getValue(), '');
- }
-
- function testSettingOfExternalLabel() {
- $tag = new SimpleTextTag(array('type' => 'text'));
- $tag->setLabel('it');
- $this->assertTrue($tag->isLabel('it'));
- }
-
- function testTextDefault() {
- $tag = new SimpleTextTag(array('value' => 'aaa'));
- $this->assertEqual($tag->getDefault(), 'aaa');
- $this->assertEqual($tag->getValue(), 'aaa');
- }
-
- function testSettingTextValue() {
- $tag = new SimpleTextTag(array('value' => 'aaa'));
- $tag->setValue('bbb');
- $this->assertEqual($tag->getValue(), 'bbb');
- $tag->resetValue();
- $this->assertEqual($tag->getValue(), 'aaa');
- }
-
- function testFailToSetHiddenValue() {
- $tag = new SimpleTextTag(array('value' => 'aaa', 'type' => 'hidden'));
- $this->assertFalse($tag->setValue('bbb'));
- $this->assertEqual($tag->getValue(), 'aaa');
- }
-
- function testSubmitDefaults() {
- $tag = new SimpleSubmitTag(array('type' => 'submit'));
- $this->assertIdentical($tag->getName(), false);
- $this->assertEqual($tag->getValue(), 'Submit');
- $this->assertFalse($tag->setValue('Cannot set this'));
- $this->assertEqual($tag->getValue(), 'Submit');
- $this->assertEqual($tag->getLabel(), 'Submit');
-
- $encoding = new MockSimpleMultipartEncoding();
- $encoding->expectNever('add');
- $tag->write($encoding);
- }
-
- function testPopulatedSubmit() {
- $tag = new SimpleSubmitTag(
- array('type' => 'submit', 'name' => 's', 'value' => 'Ok!'));
- $this->assertEqual($tag->getName(), 's');
- $this->assertEqual($tag->getValue(), 'Ok!');
- $this->assertEqual($tag->getLabel(), 'Ok!');
-
- $encoding = new MockSimpleMultipartEncoding();
- $encoding->expectOnce('add', array('s', 'Ok!'));
- $tag->write($encoding);
- }
-
- function testImageSubmit() {
- $tag = new SimpleImageSubmitTag(
- array('type' => 'image', 'name' => 's', 'alt' => 'Label'));
- $this->assertEqual($tag->getName(), 's');
- $this->assertEqual($tag->getLabel(), 'Label');
-
- $encoding = new MockSimpleMultipartEncoding();
- $encoding->expectAt(0, 'add', array('s.x', 20));
- $encoding->expectAt(1, 'add', array('s.y', 30));
- $tag->write($encoding, 20, 30);
- }
-
- function testImageSubmitTitlePreferredOverAltForLabel() {
- $tag = new SimpleImageSubmitTag(
- array('type' => 'image', 'name' => 's', 'alt' => 'Label', 'title' => 'Title'));
- $this->assertEqual($tag->getLabel(), 'Title');
- }
-
- function testButton() {
- $tag = new SimpleButtonTag(
- array('type' => 'submit', 'name' => 's', 'value' => 'do'));
- $tag->addContent('I am a button');
- $this->assertEqual($tag->getName(), 's');
- $this->assertEqual($tag->getValue(), 'do');
- $this->assertEqual($tag->getLabel(), 'I am a button');
-
- $encoding = new MockSimpleMultipartEncoding();
- $encoding->expectOnce('add', array('s', 'do'));
- $tag->write($encoding);
- }
-}
-
-class TestOfTextArea extends UnitTestCase {
-
- function testDefault() {
- $tag = new SimpleTextAreaTag(array('name' => 'a'));
- $tag->addContent('Some text');
- $this->assertEqual($tag->getName(), 'a');
- $this->assertEqual($tag->getDefault(), 'Some text');
- }
-
- function testWrapping() {
- $tag = new SimpleTextAreaTag(array('cols' => '10', 'wrap' => 'physical'));
- $tag->addContent("Lot's of text that should be wrapped");
- $this->assertEqual(
- $tag->getDefault(),
- "Lot's of\r\ntext that\r\nshould be\r\nwrapped");
- $tag->setValue("New long text\r\nwith two lines");
- $this->assertEqual(
- $tag->getValue(),
- "New long\r\ntext\r\nwith two\r\nlines");
- }
-
- function testWrappingRemovesLeadingcariageReturn() {
- $tag = new SimpleTextAreaTag(array('cols' => '20', 'wrap' => 'physical'));
- $tag->addContent("\rStuff");
- $this->assertEqual($tag->getDefault(), 'Stuff');
- $tag->setValue("\nNew stuff\n");
- $this->assertEqual($tag->getValue(), "New stuff\r\n");
- }
-
- function testBreaksAreNewlineAndCarriageReturn() {
- $tag = new SimpleTextAreaTag(array('cols' => '10'));
- $tag->addContent("Some\nText\rwith\r\nbreaks");
- $this->assertEqual($tag->getValue(), "Some\r\nText\r\nwith\r\nbreaks");
- }
-}
-
-class TestOfCheckbox extends UnitTestCase {
-
- function testCanSetCheckboxToNamedValueWithBooleanTrue() {
- $tag = new SimpleCheckboxTag(array('name' => 'a', 'value' => 'A'));
- $this->assertEqual($tag->getValue(), false);
- $tag->setValue(true);
- $this->assertIdentical($tag->getValue(), 'A');
- }
-}
-
-class TestOfSelection extends UnitTestCase {
-
- function testEmpty() {
- $tag = new SimpleSelectionTag(array('name' => 'a'));
- $this->assertIdentical($tag->getValue(), '');
- }
-
- function testSingle() {
- $tag = new SimpleSelectionTag(array('name' => 'a'));
- $option = new SimpleOptionTag(array());
- $option->addContent('AAA');
- $tag->addTag($option);
- $this->assertEqual($tag->getValue(), 'AAA');
- }
-
- function testSingleDefault() {
- $tag = new SimpleSelectionTag(array('name' => 'a'));
- $option = new SimpleOptionTag(array('selected' => ''));
- $option->addContent('AAA');
- $tag->addTag($option);
- $this->assertEqual($tag->getValue(), 'AAA');
- }
-
- function testSingleMappedDefault() {
- $tag = new SimpleSelectionTag(array('name' => 'a'));
- $option = new SimpleOptionTag(array('selected' => '', 'value' => 'aaa'));
- $option->addContent('AAA');
- $tag->addTag($option);
- $this->assertEqual($tag->getValue(), 'aaa');
- }
-
- function testStartsWithDefault() {
- $tag = new SimpleSelectionTag(array('name' => 'a'));
- $a = new SimpleOptionTag(array());
- $a->addContent('AAA');
- $tag->addTag($a);
- $b = new SimpleOptionTag(array('selected' => ''));
- $b->addContent('BBB');
- $tag->addTag($b);
- $c = new SimpleOptionTag(array());
- $c->addContent('CCC');
- $tag->addTag($c);
- $this->assertEqual($tag->getValue(), 'BBB');
- }
-
- function testSettingOption() {
- $tag = new SimpleSelectionTag(array('name' => 'a'));
- $a = new SimpleOptionTag(array());
- $a->addContent('AAA');
- $tag->addTag($a);
- $b = new SimpleOptionTag(array('selected' => ''));
- $b->addContent('BBB');
- $tag->addTag($b);
- $c = new SimpleOptionTag(array());
- $c->addContent('CCC');
- $tag->setValue('AAA');
- $this->assertEqual($tag->getValue(), 'AAA');
- }
-
- function testSettingMappedOption() {
- $tag = new SimpleSelectionTag(array('name' => 'a'));
- $a = new SimpleOptionTag(array('value' => 'aaa'));
- $a->addContent('AAA');
- $tag->addTag($a);
- $b = new SimpleOptionTag(array('value' => 'bbb', 'selected' => ''));
- $b->addContent('BBB');
- $tag->addTag($b);
- $c = new SimpleOptionTag(array('value' => 'ccc'));
- $c->addContent('CCC');
- $tag->addTag($c);
- $tag->setValue('AAA');
- $this->assertEqual($tag->getValue(), 'aaa');
- $tag->setValue('ccc');
- $this->assertEqual($tag->getValue(), 'ccc');
- }
-
- function testSelectionDespiteSpuriousWhitespace() {
- $tag = new SimpleSelectionTag(array('name' => 'a'));
- $a = new SimpleOptionTag(array());
- $a->addContent(' AAA ');
- $tag->addTag($a);
- $b = new SimpleOptionTag(array('selected' => ''));
- $b->addContent(' BBB ');
- $tag->addTag($b);
- $c = new SimpleOptionTag(array());
- $c->addContent(' CCC ');
- $tag->addTag($c);
- $this->assertEqual($tag->getValue(), ' BBB ');
- $tag->setValue('AAA');
- $this->assertEqual($tag->getValue(), ' AAA ');
- }
-
- function testFailToSetIllegalOption() {
- $tag = new SimpleSelectionTag(array('name' => 'a'));
- $a = new SimpleOptionTag(array());
- $a->addContent('AAA');
- $tag->addTag($a);
- $b = new SimpleOptionTag(array('selected' => ''));
- $b->addContent('BBB');
- $tag->addTag($b);
- $c = new SimpleOptionTag(array());
- $c->addContent('CCC');
- $tag->addTag($c);
- $this->assertFalse($tag->setValue('Not present'));
- $this->assertEqual($tag->getValue(), 'BBB');
- }
-
- function testNastyOptionValuesThatLookLikeFalse() {
- $tag = new SimpleSelectionTag(array('name' => 'a'));
- $a = new SimpleOptionTag(array('value' => '1'));
- $a->addContent('One');
- $tag->addTag($a);
- $b = new SimpleOptionTag(array('value' => '0'));
- $b->addContent('Zero');
- $tag->addTag($b);
- $this->assertIdentical($tag->getValue(), '1');
- $tag->setValue('Zero');
- $this->assertIdentical($tag->getValue(), '0');
- }
-
- function testBlankOption() {
- $tag = new SimpleSelectionTag(array('name' => 'A'));
- $a = new SimpleOptionTag(array());
- $tag->addTag($a);
- $b = new SimpleOptionTag(array());
- $b->addContent('b');
- $tag->addTag($b);
- $this->assertIdentical($tag->getValue(), '');
- $tag->setValue('b');
- $this->assertIdentical($tag->getValue(), 'b');
- $tag->setValue('');
- $this->assertIdentical($tag->getValue(), '');
- }
-
- function testMultipleDefaultWithNoSelections() {
- $tag = new MultipleSelectionTag(array('name' => 'a', 'multiple' => ''));
- $a = new SimpleOptionTag(array());
- $a->addContent('AAA');
- $tag->addTag($a);
- $b = new SimpleOptionTag(array());
- $b->addContent('BBB');
- $tag->addTag($b);
- $this->assertIdentical($tag->getDefault(), array());
- $this->assertIdentical($tag->getValue(), array());
- }
-
- function testMultipleDefaultWithSelections() {
- $tag = new MultipleSelectionTag(array('name' => 'a', 'multiple' => ''));
- $a = new SimpleOptionTag(array('selected' => ''));
- $a->addContent('AAA');
- $tag->addTag($a);
- $b = new SimpleOptionTag(array('selected' => ''));
- $b->addContent('BBB');
- $tag->addTag($b);
- $this->assertIdentical($tag->getDefault(), array('AAA', 'BBB'));
- $this->assertIdentical($tag->getValue(), array('AAA', 'BBB'));
- }
-
- function testSettingMultiple() {
- $tag = new MultipleSelectionTag(array('name' => 'a', 'multiple' => ''));
- $a = new SimpleOptionTag(array('selected' => ''));
- $a->addContent('AAA');
- $tag->addTag($a);
- $b = new SimpleOptionTag(array());
- $b->addContent('BBB');
- $tag->addTag($b);
- $c = new SimpleOptionTag(array('selected' => '', 'value' => 'ccc'));
- $c->addContent('CCC');
- $tag->addTag($c);
- $this->assertIdentical($tag->getDefault(), array('AAA', 'ccc'));
- $this->assertTrue($tag->setValue(array('BBB', 'ccc')));
- $this->assertIdentical($tag->getValue(), array('BBB', 'ccc'));
- $this->assertTrue($tag->setValue(array()));
- $this->assertIdentical($tag->getValue(), array());
- }
-
- function testFailToSetIllegalOptionsInMultiple() {
- $tag = new MultipleSelectionTag(array('name' => 'a', 'multiple' => ''));
- $a = new SimpleOptionTag(array('selected' => ''));
- $a->addContent('AAA');
- $tag->addTag($a);
- $b = new SimpleOptionTag(array());
- $b->addContent('BBB');
- $tag->addTag($b);
- $this->assertFalse($tag->setValue(array('CCC')));
- $this->assertTrue($tag->setValue(array('AAA', 'BBB')));
- $this->assertFalse($tag->setValue(array('AAA', 'CCC')));
- }
-}
-
-class TestOfRadioGroup extends UnitTestCase {
-
- function testEmptyGroup() {
- $group = new SimpleRadioGroup();
- $this->assertIdentical($group->getDefault(), false);
- $this->assertIdentical($group->getValue(), false);
- $this->assertFalse($group->setValue('a'));
- }
-
- function testReadingSingleButtonGroup() {
- $group = new SimpleRadioGroup();
- $group->addWidget(new SimpleRadioButtonTag(
- array('value' => 'A', 'checked' => '')));
- $this->assertIdentical($group->getDefault(), 'A');
- $this->assertIdentical($group->getValue(), 'A');
- }
-
- function testReadingMultipleButtonGroup() {
- $group = new SimpleRadioGroup();
- $group->addWidget(new SimpleRadioButtonTag(
- array('value' => 'A')));
- $group->addWidget(new SimpleRadioButtonTag(
- array('value' => 'B', 'checked' => '')));
- $this->assertIdentical($group->getDefault(), 'B');
- $this->assertIdentical($group->getValue(), 'B');
- }
-
- function testFailToSetUnlistedValue() {
- $group = new SimpleRadioGroup();
- $group->addWidget(new SimpleRadioButtonTag(array('value' => 'z')));
- $this->assertFalse($group->setValue('a'));
- $this->assertIdentical($group->getValue(), false);
- }
-
- function testSettingNewValueClearsTheOldOne() {
- $group = new SimpleRadioGroup();
- $group->addWidget(new SimpleRadioButtonTag(
- array('value' => 'A')));
- $group->addWidget(new SimpleRadioButtonTag(
- array('value' => 'B', 'checked' => '')));
- $this->assertTrue($group->setValue('A'));
- $this->assertIdentical($group->getValue(), 'A');
- }
-
- function testIsIdMatchesAnyWidgetInSet() {
- $group = new SimpleRadioGroup();
- $group->addWidget(new SimpleRadioButtonTag(
- array('value' => 'A', 'id' => 'i1')));
- $group->addWidget(new SimpleRadioButtonTag(
- array('value' => 'B', 'id' => 'i2')));
- $this->assertFalse($group->isId('i0'));
- $this->assertTrue($group->isId('i1'));
- $this->assertTrue($group->isId('i2'));
- }
-
- function testIsLabelMatchesAnyWidgetInSet() {
- $group = new SimpleRadioGroup();
- $button1 = new SimpleRadioButtonTag(array('value' => 'A'));
- $button1->setLabel('one');
- $group->addWidget($button1);
- $button2 = new SimpleRadioButtonTag(array('value' => 'B'));
- $button2->setLabel('two');
- $group->addWidget($button2);
- $this->assertFalse($group->isLabel('three'));
- $this->assertTrue($group->isLabel('one'));
- $this->assertTrue($group->isLabel('two'));
- }
-}
-
-class TestOfTagGroup extends UnitTestCase {
-
- function testReadingMultipleCheckboxGroup() {
- $group = new SimpleCheckboxGroup();
- $group->addWidget(new SimpleCheckboxTag(array('value' => 'A')));
- $group->addWidget(new SimpleCheckboxTag(
- array('value' => 'B', 'checked' => '')));
- $this->assertIdentical($group->getDefault(), 'B');
- $this->assertIdentical($group->getValue(), 'B');
- }
-
- function testReadingMultipleUncheckedItems() {
- $group = new SimpleCheckboxGroup();
- $group->addWidget(new SimpleCheckboxTag(array('value' => 'A')));
- $group->addWidget(new SimpleCheckboxTag(array('value' => 'B')));
- $this->assertIdentical($group->getDefault(), false);
- $this->assertIdentical($group->getValue(), false);
- }
-
- function testReadingMultipleCheckedItems() {
- $group = new SimpleCheckboxGroup();
- $group->addWidget(new SimpleCheckboxTag(
- array('value' => 'A', 'checked' => '')));
- $group->addWidget(new SimpleCheckboxTag(
- array('value' => 'B', 'checked' => '')));
- $this->assertIdentical($group->getDefault(), array('A', 'B'));
- $this->assertIdentical($group->getValue(), array('A', 'B'));
- }
-
- function testSettingSingleValue() {
- $group = new SimpleCheckboxGroup();
- $group->addWidget(new SimpleCheckboxTag(array('value' => 'A')));
- $group->addWidget(new SimpleCheckboxTag(array('value' => 'B')));
- $this->assertTrue($group->setValue('A'));
- $this->assertIdentical($group->getValue(), 'A');
- $this->assertTrue($group->setValue('B'));
- $this->assertIdentical($group->getValue(), 'B');
- }
-
- function testSettingMultipleValues() {
- $group = new SimpleCheckboxGroup();
- $group->addWidget(new SimpleCheckboxTag(array('value' => 'A')));
- $group->addWidget(new SimpleCheckboxTag(array('value' => 'B')));
- $this->assertTrue($group->setValue(array('A', 'B')));
- $this->assertIdentical($group->getValue(), array('A', 'B'));
- }
-
- function testSettingNoValue() {
- $group = new SimpleCheckboxGroup();
- $group->addWidget(new SimpleCheckboxTag(array('value' => 'A')));
- $group->addWidget(new SimpleCheckboxTag(array('value' => 'B')));
- $this->assertTrue($group->setValue(false));
- $this->assertIdentical($group->getValue(), false);
- }
-
- function testIsIdMatchesAnyIdInSet() {
- $group = new SimpleCheckboxGroup();
- $group->addWidget(new SimpleCheckboxTag(array('id' => 1, 'value' => 'A')));
- $group->addWidget(new SimpleCheckboxTag(array('id' => 2, 'value' => 'B')));
- $this->assertFalse($group->isId(0));
- $this->assertTrue($group->isId(1));
- $this->assertTrue($group->isId(2));
- }
-}
-
-class TestOfUploadWidget extends UnitTestCase {
-
- function testValueIsFilePath() {
- $upload = new SimpleUploadTag(array('name' => 'a'));
- $upload->setValue(dirname(__FILE__) . '/support/upload_sample.txt');
- $this->assertEqual($upload->getValue(), dirname(__FILE__) . '/support/upload_sample.txt');
- }
-
- function testSubmitsFileContents() {
- $encoding = new MockSimpleMultipartEncoding();
- $encoding->expectOnce('attach', array(
- 'a',
- 'Sample for testing file upload',
- 'upload_sample.txt'));
- $upload = new SimpleUploadTag(array('name' => 'a'));
- $upload->setValue(dirname(__FILE__) . '/support/upload_sample.txt');
- $upload->write($encoding);
- }
-}
-
-class TestOfLabelTag extends UnitTestCase {
-
- function testLabelShouldHaveAnEndTag() {
- $label = new SimpleLabelTag(array());
- $this->assertTrue($label->expectEndTag());
- }
-
- function testContentIsTextOnly() {
- $label = new SimpleLabelTag(array());
- $label->addContent('Here <tag>are</tag> words');
- $this->assertEqual($label->getText(), 'Here are words');
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/test_with_parse_error.php b/3rdparty/simpletest/test/test_with_parse_error.php
deleted file mode 100644
index 41a5832a5cb..00000000000
--- a/3rdparty/simpletest/test/test_with_parse_error.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
- // $Id: test_with_parse_error.php 901 2005-01-24 00:32:14Z lastcraft $
-
- class TestCaseWithParseError extends UnitTestCase {
- wibble
- }
-
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/unit_tester_test.php b/3rdparty/simpletest/test/unit_tester_test.php
deleted file mode 100644
index ce9850f09ab..00000000000
--- a/3rdparty/simpletest/test/unit_tester_test.php
+++ /dev/null
@@ -1,61 +0,0 @@
-<?php
-// $Id: unit_tester_test.php 1748 2008-04-14 01:50:41Z lastcraft $
-require_once(dirname(__FILE__) . '/../autorun.php');
-
-class ReferenceForTesting {
-}
-
-class TestOfUnitTester extends UnitTestCase {
-
- function testAssertTrueReturnsAssertionAsBoolean() {
- $this->assertTrue($this->assertTrue(true));
- }
-
- function testAssertFalseReturnsAssertionAsBoolean() {
- $this->assertTrue($this->assertFalse(false));
- }
-
- function testAssertEqualReturnsAssertionAsBoolean() {
- $this->assertTrue($this->assertEqual(5, 5));
- }
-
- function testAssertIdenticalReturnsAssertionAsBoolean() {
- $this->assertTrue($this->assertIdentical(5, 5));
- }
-
- function testCoreAssertionsDoNotThrowErrors() {
- $this->assertIsA($this, 'UnitTestCase');
- $this->assertNotA($this, 'WebTestCase');
- }
-
- function testReferenceAssertionOnObjects() {
- $a = new ReferenceForTesting();
- $b = $a;
- $this->assertSame($a, $b);
- }
-
- function testReferenceAssertionOnScalars() {
- $a = 25;
- $b = &$a;
- $this->assertReference($a, $b);
- }
-
- function testCloneOnObjects() {
- $a = new ReferenceForTesting();
- $b = new ReferenceForTesting();
- $this->assertClone($a, $b);
- }
-
- function TODO_testCloneOnScalars() {
- $a = 25;
- $b = 25;
- $this->assertClone($a, $b);
- }
-
- function testCopyOnScalars() {
- $a = 25;
- $b = 25;
- $this->assertCopy($a, $b);
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/unit_tests.php b/3rdparty/simpletest/test/unit_tests.php
deleted file mode 100644
index 9e621293f9e..00000000000
--- a/3rdparty/simpletest/test/unit_tests.php
+++ /dev/null
@@ -1,49 +0,0 @@
-<?php
-// $Id: unit_tests.php 1986 2010-04-02 10:02:42Z lastcraft $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../unit_tester.php');
-require_once(dirname(__FILE__) . '/../shell_tester.php');
-require_once(dirname(__FILE__) . '/../mock_objects.php');
-require_once(dirname(__FILE__) . '/../web_tester.php');
-require_once(dirname(__FILE__) . '/../extensions/pear_test_case.php');
-
-class UnitTests extends TestSuite {
- function UnitTests() {
- $this->TestSuite('Unit tests');
- $path = dirname(__FILE__);
- $this->addFile($path . '/errors_test.php');
- $this->addFile($path . '/exceptions_test.php');
- $this->addFile($path . '/arguments_test.php');
- $this->addFile($path . '/autorun_test.php');
- $this->addFile($path . '/compatibility_test.php');
- $this->addFile($path . '/simpletest_test.php');
- $this->addFile($path . '/dumper_test.php');
- $this->addFile($path . '/expectation_test.php');
- $this->addFile($path . '/unit_tester_test.php');
- $this->addFile($path . '/reflection_php5_test.php');
- $this->addFile($path . '/mock_objects_test.php');
- $this->addFile($path . '/interfaces_test.php');
- $this->addFile($path . '/collector_test.php');
- $this->addFile($path . '/recorder_test.php');
- $this->addFile($path . '/adapter_test.php');
- $this->addFile($path . '/socket_test.php');
- $this->addFile($path . '/encoding_test.php');
- $this->addFile($path . '/url_test.php');
- $this->addFile($path . '/cookies_test.php');
- $this->addFile($path . '/http_test.php');
- $this->addFile($path . '/authentication_test.php');
- $this->addFile($path . '/user_agent_test.php');
- $this->addFile($path . '/php_parser_test.php');
- $this->addFile($path . '/parsing_test.php');
- $this->addFile($path . '/tag_test.php');
- $this->addFile($path . '/form_test.php');
- $this->addFile($path . '/page_test.php');
- $this->addFile($path . '/frames_test.php');
- $this->addFile($path . '/browser_test.php');
- $this->addFile($path . '/web_tester_test.php');
- $this->addFile($path . '/shell_tester_test.php');
- $this->addFile($path . '/xml_test.php');
- $this->addFile($path . '/../extensions/testdox/test.php');
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/url_test.php b/3rdparty/simpletest/test/url_test.php
deleted file mode 100644
index 80119afbdde..00000000000
--- a/3rdparty/simpletest/test/url_test.php
+++ /dev/null
@@ -1,515 +0,0 @@
-<?php
-// $Id: url_test.php 1998 2010-07-27 09:55:55Z pp11 $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../url.php');
-
-class TestOfUrl extends UnitTestCase {
-
- function testDefaultUrl() {
- $url = new SimpleUrl('');
- $this->assertEqual($url->getScheme(), '');
- $this->assertEqual($url->getHost(), '');
- $this->assertEqual($url->getScheme('http'), 'http');
- $this->assertEqual($url->getHost('localhost'), 'localhost');
- $this->assertEqual($url->getPath(), '');
- }
-
- function testBasicParsing() {
- $url = new SimpleUrl('https://www.lastcraft.com/test/');
- $this->assertEqual($url->getScheme(), 'https');
- $this->assertEqual($url->getHost(), 'www.lastcraft.com');
- $this->assertEqual($url->getPath(), '/test/');
- }
-
- function testRelativeUrls() {
- $url = new SimpleUrl('../somewhere.php');
- $this->assertEqual($url->getScheme(), false);
- $this->assertEqual($url->getHost(), false);
- $this->assertEqual($url->getPath(), '../somewhere.php');
- }
-
- function testParseBareParameter() {
- $url = new SimpleUrl('?a');
- $this->assertEqual($url->getPath(), '');
- $this->assertEqual($url->getEncodedRequest(), '?a');
- $url->addRequestParameter('x', 'X');
- $this->assertEqual($url->getEncodedRequest(), '?a=&x=X');
- }
-
- function testParseEmptyParameter() {
- $url = new SimpleUrl('?a=');
- $this->assertEqual($url->getPath(), '');
- $this->assertEqual($url->getEncodedRequest(), '?a=');
- $url->addRequestParameter('x', 'X');
- $this->assertEqual($url->getEncodedRequest(), '?a=&x=X');
- }
-
- function testParseParameterPair() {
- $url = new SimpleUrl('?a=A');
- $this->assertEqual($url->getPath(), '');
- $this->assertEqual($url->getEncodedRequest(), '?a=A');
- $url->addRequestParameter('x', 'X');
- $this->assertEqual($url->getEncodedRequest(), '?a=A&x=X');
- }
-
- function testParseMultipleParameters() {
- $url = new SimpleUrl('?a=A&b=B');
- $this->assertEqual($url->getEncodedRequest(), '?a=A&b=B');
- $url->addRequestParameter('x', 'X');
- $this->assertEqual($url->getEncodedRequest(), '?a=A&b=B&x=X');
- }
-
- function testParsingParameterMixture() {
- $url = new SimpleUrl('?a=A&b=&c');
- $this->assertEqual($url->getEncodedRequest(), '?a=A&b=&c');
- $url->addRequestParameter('x', 'X');
- $this->assertEqual($url->getEncodedRequest(), '?a=A&b=&c=&x=X');
- }
-
- function testAddParametersFromScratch() {
- $url = new SimpleUrl('');
- $url->addRequestParameter('a', 'A');
- $this->assertEqual($url->getEncodedRequest(), '?a=A');
- $url->addRequestParameter('b', 'B');
- $this->assertEqual($url->getEncodedRequest(), '?a=A&b=B');
- $url->addRequestParameter('a', 'aaa');
- $this->assertEqual($url->getEncodedRequest(), '?a=A&b=B&a=aaa');
- }
-
- function testClearingParameters() {
- $url = new SimpleUrl('');
- $url->addRequestParameter('a', 'A');
- $url->clearRequest();
- $this->assertIdentical($url->getEncodedRequest(), '');
- }
-
- function testEncodingParameters() {
- $url = new SimpleUrl('');
- $url->addRequestParameter('a', '?!"\'#~@[]{}:;<>,./|$%^&*()_+-=');
- $this->assertIdentical(
- $request = $url->getEncodedRequest(),
- '?a=%3F%21%22%27%23%7E%40%5B%5D%7B%7D%3A%3B%3C%3E%2C.%2F%7C%24%25%5E%26%2A%28%29_%2B-%3D');
- }
-
- function testDecodingParameters() {
- $url = new SimpleUrl('?a=%3F%21%22%27%23%7E%40%5B%5D%7B%7D%3A%3B%3C%3E%2C.%2F%7C%24%25%5E%26%2A%28%29_%2B-%3D');
- $this->assertEqual(
- $url->getEncodedRequest(),
- '?a=' . urlencode('?!"\'#~@[]{}:;<>,./|$%^&*()_+-='));
- }
-
- function testUrlInQueryDoesNotConfuseParsing() {
- $url = new SimpleUrl('wibble/login.php?url=http://www.google.com/moo/');
- $this->assertFalse($url->getScheme());
- $this->assertFalse($url->getHost());
- $this->assertEqual($url->getPath(), 'wibble/login.php');
- $this->assertEqual($url->getEncodedRequest(), '?url=http://www.google.com/moo/');
- }
-
- function testSettingCordinates() {
- $url = new SimpleUrl('');
- $url->setCoordinates('32', '45');
- $this->assertIdentical($url->getX(), 32);
- $this->assertIdentical($url->getY(), 45);
- $this->assertEqual($url->getEncodedRequest(), '');
- }
-
- function testParseCordinates() {
- $url = new SimpleUrl('?32,45');
- $this->assertIdentical($url->getX(), 32);
- $this->assertIdentical($url->getY(), 45);
- }
-
- function testClearingCordinates() {
- $url = new SimpleUrl('?32,45');
- $url->setCoordinates();
- $this->assertIdentical($url->getX(), false);
- $this->assertIdentical($url->getY(), false);
- }
-
- function testParsingParameterCordinateMixture() {
- $url = new SimpleUrl('?a=A&b=&c?32,45');
- $this->assertIdentical($url->getX(), 32);
- $this->assertIdentical($url->getY(), 45);
- $this->assertEqual($url->getEncodedRequest(), '?a=A&b=&c');
- }
-
- function testParsingParameterWithBadCordinates() {
- $url = new SimpleUrl('?a=A&b=&c?32');
- $this->assertIdentical($url->getX(), false);
- $this->assertIdentical($url->getY(), false);
- $this->assertEqual($url->getEncodedRequest(), '?a=A&b=&c?32');
- }
-
- function testPageSplitting() {
- $url = new SimpleUrl('./here/../there/somewhere.php');
- $this->assertEqual($url->getPath(), './here/../there/somewhere.php');
- $this->assertEqual($url->getPage(), 'somewhere.php');
- $this->assertEqual($url->getBasePath(), './here/../there/');
- }
-
- function testAbsolutePathPageSplitting() {
- $url = new SimpleUrl("http://host.com/here/there/somewhere.php");
- $this->assertEqual($url->getPath(), "/here/there/somewhere.php");
- $this->assertEqual($url->getPage(), "somewhere.php");
- $this->assertEqual($url->getBasePath(), "/here/there/");
- }
-
- function testSplittingUrlWithNoPageGivesEmptyPage() {
- $url = new SimpleUrl('/here/there/');
- $this->assertEqual($url->getPath(), '/here/there/');
- $this->assertEqual($url->getPage(), '');
- $this->assertEqual($url->getBasePath(), '/here/there/');
- }
-
- function testPathNormalisation() {
- $url = new SimpleUrl();
- $this->assertEqual(
- $url->normalisePath('https://host.com/I/am/here/../there/somewhere.php'),
- 'https://host.com/I/am/there/somewhere.php');
- }
-
- // regression test for #1535407
- function testPathNormalisationWithSinglePeriod() {
- $url = new SimpleUrl();
- $this->assertEqual(
- $url->normalisePath('https://host.com/I/am/here/./../there/somewhere.php'),
- 'https://host.com/I/am/there/somewhere.php');
- }
-
- // regression test for #1852413
- function testHostnameExtractedFromUContainingAtSign() {
- $url = new SimpleUrl("http://localhost/name@example.com");
- $this->assertEqual($url->getScheme(), "http");
- $this->assertEqual($url->getUsername(), "");
- $this->assertEqual($url->getPassword(), "");
- $this->assertEqual($url->getHost(), "localhost");
- $this->assertEqual($url->getPath(), "/name@example.com");
- }
-
- function testHostnameInLocalhost() {
- $url = new SimpleUrl("http://localhost/name/example.com");
- $this->assertEqual($url->getScheme(), "http");
- $this->assertEqual($url->getUsername(), "");
- $this->assertEqual($url->getPassword(), "");
- $this->assertEqual($url->getHost(), "localhost");
- $this->assertEqual($url->getPath(), "/name/example.com");
- }
-
- function testUsernameAndPasswordAreUrlDecoded() {
- $url = new SimpleUrl('http://' . urlencode('test@test') .
- ':' . urlencode('$!�@*&%') . '@www.lastcraft.com');
- $this->assertEqual($url->getUsername(), 'test@test');
- $this->assertEqual($url->getPassword(), '$!�@*&%');
- }
-
- function testBlitz() {
- $this->assertUrl(
- "https://username:password@www.somewhere.com:243/this/that/here.php?a=1&b=2#anchor",
- array("https", "username", "password", "www.somewhere.com", 243, "/this/that/here.php", "com", "?a=1&b=2", "anchor"),
- array("a" => "1", "b" => "2"));
- $this->assertUrl(
- "username:password@www.somewhere.com/this/that/here.php?a=1",
- array(false, "username", "password", "www.somewhere.com", false, "/this/that/here.php", "com", "?a=1", false),
- array("a" => "1"));
- $this->assertUrl(
- "username:password@somewhere.com:243?1,2",
- array(false, "username", "password", "somewhere.com", 243, "/", "com", "", false),
- array(),
- array(1, 2));
- $this->assertUrl(
- "https://www.somewhere.com",
- array("https", false, false, "www.somewhere.com", false, "/", "com", "", false));
- $this->assertUrl(
- "username@www.somewhere.com:243#anchor",
- array(false, "username", false, "www.somewhere.com", 243, "/", "com", "", "anchor"));
- $this->assertUrl(
- "/this/that/here.php?a=1&b=2?3,4",
- array(false, false, false, false, false, "/this/that/here.php", false, "?a=1&b=2", false),
- array("a" => "1", "b" => "2"),
- array(3, 4));
- $this->assertUrl(
- "username@/here.php?a=1&b=2",
- array(false, "username", false, false, false, "/here.php", false, "?a=1&b=2", false),
- array("a" => "1", "b" => "2"));
- }
-
- function testAmbiguousHosts() {
- $this->assertUrl(
- "tigger",
- array(false, false, false, false, false, "tigger", false, "", false));
- $this->assertUrl(
- "/tigger",
- array(false, false, false, false, false, "/tigger", false, "", false));
- $this->assertUrl(
- "//tigger",
- array(false, false, false, "tigger", false, "/", false, "", false));
- $this->assertUrl(
- "//tigger/",
- array(false, false, false, "tigger", false, "/", false, "", false));
- $this->assertUrl(
- "tigger.com",
- array(false, false, false, "tigger.com", false, "/", "com", "", false));
- $this->assertUrl(
- "me.net/tigger",
- array(false, false, false, "me.net", false, "/tigger", "net", "", false));
- }
-
- function testAsString() {
- $this->assertPreserved('https://www.here.com');
- $this->assertPreserved('http://me:secret@www.here.com');
- $this->assertPreserved('http://here/there');
- $this->assertPreserved('http://here/there?a=A&b=B');
- $this->assertPreserved('http://here/there?a=1&a=2');
- $this->assertPreserved('http://here/there?a=1&a=2?9,8');
- $this->assertPreserved('http://host?a=1&a=2');
- $this->assertPreserved('http://host#stuff');
- $this->assertPreserved('http://me:secret@www.here.com/a/b/c/here.html?a=A?7,6');
- $this->assertPreserved('http://www.here.com/?a=A__b=B');
- $this->assertPreserved('http://www.example.com:8080/');
- }
-
- function testUrlWithTwoSlashesInPath() {
- $url = new SimpleUrl('/article/categoryedit/insert//');
- $this->assertEqual($url->getPath(), '/article/categoryedit/insert//');
- }
-
- function testUrlWithRequestKeyEncoded() {
- $url = new SimpleUrl('/?foo%5B1%5D=bar');
- $this->assertEqual($url->getEncodedRequest(), '?foo%5B1%5D=bar');
- $url->addRequestParameter('a[1]', 'b[]');
- $this->assertEqual($url->getEncodedRequest(), '?foo%5B1%5D=bar&a%5B1%5D=b%5B%5D');
-
- $url = new SimpleUrl('/');
- $url->addRequestParameter('a[1]', 'b[]');
- $this->assertEqual($url->getEncodedRequest(), '?a%5B1%5D=b%5B%5D');
- }
-
- function testUrlWithRequestKeyEncodedAndParamNamLookingLikePair() {
- $url = new SimpleUrl('/');
- $url->addRequestParameter('foo[]=bar', '');
- $this->assertEqual($url->getEncodedRequest(), '?foo%5B%5D%3Dbar=');
- $url = new SimpleUrl('/?foo%5B%5D%3Dbar=');
- $this->assertEqual($url->getEncodedRequest(), '?foo%5B%5D%3Dbar=');
- }
-
- function assertUrl($raw, $parts, $params = false, $coords = false) {
- if (! is_array($params)) {
- $params = array();
- }
- $url = new SimpleUrl($raw);
- $this->assertIdentical($url->getScheme(), $parts[0], "[$raw] scheme -> %s");
- $this->assertIdentical($url->getUsername(), $parts[1], "[$raw] username -> %s");
- $this->assertIdentical($url->getPassword(), $parts[2], "[$raw] password -> %s");
- $this->assertIdentical($url->getHost(), $parts[3], "[$raw] host -> %s");
- $this->assertIdentical($url->getPort(), $parts[4], "[$raw] port -> %s");
- $this->assertIdentical($url->getPath(), $parts[5], "[$raw] path -> %s");
- $this->assertIdentical($url->getTld(), $parts[6], "[$raw] tld -> %s");
- $this->assertIdentical($url->getEncodedRequest(), $parts[7], "[$raw] encoded -> %s");
- $this->assertIdentical($url->getFragment(), $parts[8], "[$raw] fragment -> %s");
- if ($coords) {
- $this->assertIdentical($url->getX(), $coords[0], "[$raw] x -> %s");
- $this->assertIdentical($url->getY(), $coords[1], "[$raw] y -> %s");
- }
- }
-
- function assertPreserved($string) {
- $url = new SimpleUrl($string);
- $this->assertEqual($url->asString(), $string);
- }
-}
-
-class TestOfAbsoluteUrls extends UnitTestCase {
-
- function testDirectoriesAfterFilename() {
- $string = '../../index.php/foo/bar';
- $url = new SimpleUrl($string);
- $this->assertEqual($url->asString(), $string);
-
- $absolute = $url->makeAbsolute('http://www.domain.com/some/path/');
- $this->assertEqual($absolute->asString(), 'http://www.domain.com/index.php/foo/bar');
- }
-
- function testMakingAbsolute() {
- $url = new SimpleUrl('../there/somewhere.php');
- $this->assertEqual($url->getPath(), '../there/somewhere.php');
- $absolute = $url->makeAbsolute('https://host.com:1234/I/am/here/');
- $this->assertEqual($absolute->getScheme(), 'https');
- $this->assertEqual($absolute->getHost(), 'host.com');
- $this->assertEqual($absolute->getPort(), 1234);
- $this->assertEqual($absolute->getPath(), '/I/am/there/somewhere.php');
- }
-
- function testMakingAnEmptyUrlAbsolute() {
- $url = new SimpleUrl('');
- $this->assertEqual($url->getPath(), '');
- $absolute = $url->makeAbsolute('http://host.com/I/am/here/page.html');
- $this->assertEqual($absolute->getScheme(), 'http');
- $this->assertEqual($absolute->getHost(), 'host.com');
- $this->assertEqual($absolute->getPath(), '/I/am/here/page.html');
- }
-
- function testMakingAnEmptyUrlAbsoluteWithMissingPageName() {
- $url = new SimpleUrl('');
- $this->assertEqual($url->getPath(), '');
- $absolute = $url->makeAbsolute('http://host.com/I/am/here/');
- $this->assertEqual($absolute->getScheme(), 'http');
- $this->assertEqual($absolute->getHost(), 'host.com');
- $this->assertEqual($absolute->getPath(), '/I/am/here/');
- }
-
- function testMakingAShortQueryUrlAbsolute() {
- $url = new SimpleUrl('?a#b');
- $this->assertEqual($url->getPath(), '');
- $absolute = $url->makeAbsolute('http://host.com/I/am/here/');
- $this->assertEqual($absolute->getScheme(), 'http');
- $this->assertEqual($absolute->getHost(), 'host.com');
- $this->assertEqual($absolute->getPath(), '/I/am/here/');
- $this->assertEqual($absolute->getEncodedRequest(), '?a');
- $this->assertEqual($absolute->getFragment(), 'b');
- }
-
- function testMakingADirectoryUrlAbsolute() {
- $url = new SimpleUrl('hello/');
- $this->assertEqual($url->getPath(), 'hello/');
- $this->assertEqual($url->getBasePath(), 'hello/');
- $this->assertEqual($url->getPage(), '');
- $absolute = $url->makeAbsolute('http://host.com/I/am/here/page.html');
- $this->assertEqual($absolute->getPath(), '/I/am/here/hello/');
- }
-
- function testMakingARootUrlAbsolute() {
- $url = new SimpleUrl('/');
- $this->assertEqual($url->getPath(), '/');
- $absolute = $url->makeAbsolute('http://host.com/I/am/here/page.html');
- $this->assertEqual($absolute->getPath(), '/');
- }
-
- function testMakingARootPageUrlAbsolute() {
- $url = new SimpleUrl('/here.html');
- $absolute = $url->makeAbsolute('http://host.com/I/am/here/page.html');
- $this->assertEqual($absolute->getPath(), '/here.html');
- }
-
- function testCarryAuthenticationFromRootPage() {
- $url = new SimpleUrl('here.html');
- $absolute = $url->makeAbsolute('http://test:secret@host.com/');
- $this->assertEqual($absolute->getPath(), '/here.html');
- $this->assertEqual($absolute->getUsername(), 'test');
- $this->assertEqual($absolute->getPassword(), 'secret');
- }
-
- function testMakingCoordinateUrlAbsolute() {
- $url = new SimpleUrl('?1,2');
- $this->assertEqual($url->getPath(), '');
- $absolute = $url->makeAbsolute('http://host.com/I/am/here/');
- $this->assertEqual($absolute->getScheme(), 'http');
- $this->assertEqual($absolute->getHost(), 'host.com');
- $this->assertEqual($absolute->getPath(), '/I/am/here/');
- $this->assertEqual($absolute->getX(), 1);
- $this->assertEqual($absolute->getY(), 2);
- }
-
- function testMakingAbsoluteAppendedPath() {
- $url = new SimpleUrl('./there/somewhere.php');
- $absolute = $url->makeAbsolute('https://host.com/here/');
- $this->assertEqual($absolute->getPath(), '/here/there/somewhere.php');
- }
-
- function testMakingAbsoluteBadlyFormedAppendedPath() {
- $url = new SimpleUrl('there/somewhere.php');
- $absolute = $url->makeAbsolute('https://host.com/here/');
- $this->assertEqual($absolute->getPath(), '/here/there/somewhere.php');
- }
-
- function testMakingAbsoluteHasNoEffectWhenAlreadyAbsolute() {
- $url = new SimpleUrl('https://test:secret@www.lastcraft.com:321/stuff/?a=1#f');
- $absolute = $url->makeAbsolute('http://host.com/here/');
- $this->assertEqual($absolute->getScheme(), 'https');
- $this->assertEqual($absolute->getUsername(), 'test');
- $this->assertEqual($absolute->getPassword(), 'secret');
- $this->assertEqual($absolute->getHost(), 'www.lastcraft.com');
- $this->assertEqual($absolute->getPort(), 321);
- $this->assertEqual($absolute->getPath(), '/stuff/');
- $this->assertEqual($absolute->getEncodedRequest(), '?a=1');
- $this->assertEqual($absolute->getFragment(), 'f');
- }
-
- function testMakingAbsoluteCarriesAuthenticationWhenAlreadyAbsolute() {
- $url = new SimpleUrl('https://www.lastcraft.com');
- $absolute = $url->makeAbsolute('http://test:secret@host.com/here/');
- $this->assertEqual($absolute->getHost(), 'www.lastcraft.com');
- $this->assertEqual($absolute->getUsername(), 'test');
- $this->assertEqual($absolute->getPassword(), 'secret');
- }
-
- function testMakingHostOnlyAbsoluteDoesNotCarryAnyOtherInformation() {
- $url = new SimpleUrl('http://www.lastcraft.com');
- $absolute = $url->makeAbsolute('https://host.com:81/here/');
- $this->assertEqual($absolute->getScheme(), 'http');
- $this->assertEqual($absolute->getHost(), 'www.lastcraft.com');
- $this->assertIdentical($absolute->getPort(), false);
- $this->assertEqual($absolute->getPath(), '/');
- }
-}
-
-class TestOfFrameUrl extends UnitTestCase {
-
- function testTargetAttachment() {
- $url = new SimpleUrl('http://www.site.com/home.html');
- $this->assertIdentical($url->getTarget(), false);
- $url->setTarget('A frame');
- $this->assertIdentical($url->getTarget(), 'A frame');
- }
-}
-
-/**
- * @note Based off of http://www.mozilla.org/quality/networking/testing/filetests.html
- */
-class TestOfFileUrl extends UnitTestCase {
-
- function testMinimalUrl() {
- $url = new SimpleUrl('file:///');
- $this->assertEqual($url->getScheme(), 'file');
- $this->assertIdentical($url->getHost(), false);
- $this->assertEqual($url->getPath(), '/');
- }
-
- function testUnixUrl() {
- $url = new SimpleUrl('file:///fileInRoot');
- $this->assertEqual($url->getScheme(), 'file');
- $this->assertIdentical($url->getHost(), false);
- $this->assertEqual($url->getPath(), '/fileInRoot');
- }
-
- function testDOSVolumeUrl() {
- $url = new SimpleUrl('file:///C:/config.sys');
- $this->assertEqual($url->getScheme(), 'file');
- $this->assertIdentical($url->getHost(), false);
- $this->assertEqual($url->getPath(), '/C:/config.sys');
- }
-
- function testDOSVolumePromotion() {
- $url = new SimpleUrl('file://C:/config.sys');
- $this->assertEqual($url->getScheme(), 'file');
- $this->assertIdentical($url->getHost(), false);
- $this->assertEqual($url->getPath(), '/C:/config.sys');
- }
-
- function testDOSBackslashes() {
- $url = new SimpleUrl('file:///C:\config.sys');
- $this->assertEqual($url->getScheme(), 'file');
- $this->assertIdentical($url->getHost(), false);
- $this->assertEqual($url->getPath(), '/C:/config.sys');
- }
-
- function testDOSDirnameAfterFile() {
- $url = new SimpleUrl('file://C:\config.sys');
- $this->assertEqual($url->getScheme(), 'file');
- $this->assertIdentical($url->getHost(), false);
- $this->assertEqual($url->getPath(), '/C:/config.sys');
- }
-
-}
-
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/user_agent_test.php b/3rdparty/simpletest/test/user_agent_test.php
deleted file mode 100644
index 030abeb257d..00000000000
--- a/3rdparty/simpletest/test/user_agent_test.php
+++ /dev/null
@@ -1,348 +0,0 @@
-<?php
-// $Id: user_agent_test.php 1788 2008-04-27 11:01:59Z pp11 $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../user_agent.php');
-require_once(dirname(__FILE__) . '/../authentication.php');
-require_once(dirname(__FILE__) . '/../http.php');
-require_once(dirname(__FILE__) . '/../encoding.php');
-Mock::generate('SimpleHttpRequest');
-Mock::generate('SimpleHttpResponse');
-Mock::generate('SimpleHttpHeaders');
-Mock::generatePartial('SimpleUserAgent', 'MockRequestUserAgent', array('createHttpRequest'));
-
-class TestOfFetchingUrlParameters extends UnitTestCase {
-
- function setUp() {
- $this->headers = new MockSimpleHttpHeaders();
- $this->response = new MockSimpleHttpResponse();
- $this->response->setReturnValue('isError', false);
- $this->response->returns('getHeaders', new MockSimpleHttpHeaders());
- $this->request = new MockSimpleHttpRequest();
- $this->request->returns('fetch', $this->response);
- }
-
- function testGetRequestWithoutIncidentGivesNoErrors() {
- $url = new SimpleUrl('http://test:secret@this.com/page.html');
- $url->addRequestParameters(array('a' => 'A', 'b' => 'B'));
-
- $agent = new MockRequestUserAgent();
- $agent->returns('createHttpRequest', $this->request);
- $agent->__construct();
-
- $response = $agent->fetchResponse(
- new SimpleUrl('http://test:secret@this.com/page.html'),
- new SimpleGetEncoding(array('a' => 'A', 'b' => 'B')));
- $this->assertFalse($response->isError());
- }
-}
-
-class TestOfAdditionalHeaders extends UnitTestCase {
-
- function testAdditionalHeaderAddedToRequest() {
- $response = new MockSimpleHttpResponse();
- $response->setReturnReference('getHeaders', new MockSimpleHttpHeaders());
-
- $request = new MockSimpleHttpRequest();
- $request->setReturnReference('fetch', $response);
- $request->expectOnce(
- 'addHeaderLine',
- array('User-Agent: SimpleTest'));
-
- $agent = new MockRequestUserAgent();
- $agent->setReturnReference('createHttpRequest', $request);
- $agent->__construct();
- $agent->addHeader('User-Agent: SimpleTest');
- $response = $agent->fetchResponse(new SimpleUrl('http://this.host/'), new SimpleGetEncoding());
- }
-}
-
-class TestOfBrowserCookies extends UnitTestCase {
-
- private function createStandardResponse() {
- $response = new MockSimpleHttpResponse();
- $response->setReturnValue("isError", false);
- $response->setReturnValue("getContent", "stuff");
- $response->setReturnReference("getHeaders", new MockSimpleHttpHeaders());
- return $response;
- }
-
- private function createCookieSite($header_lines) {
- $headers = new SimpleHttpHeaders($header_lines);
- $response = new MockSimpleHttpResponse();
- $response->setReturnValue("isError", false);
- $response->setReturnReference("getHeaders", $headers);
- $response->setReturnValue("getContent", "stuff");
- $request = new MockSimpleHttpRequest();
- $request->setReturnReference("fetch", $response);
- return $request;
- }
-
- private function createMockedRequestUserAgent(&$request) {
- $agent = new MockRequestUserAgent();
- $agent->setReturnReference('createHttpRequest', $request);
- $agent->__construct();
- return $agent;
- }
-
- function testCookieJarIsSentToRequest() {
- $jar = new SimpleCookieJar();
- $jar->setCookie('a', 'A');
-
- $request = new MockSimpleHttpRequest();
- $request->returns('fetch', $this->createStandardResponse());
- $request->expectOnce('readCookiesFromJar', array($jar, '*'));
-
- $agent = $this->createMockedRequestUserAgent($request);
- $agent->setCookie('a', 'A');
- $agent->fetchResponse(
- new SimpleUrl('http://this.com/this/path/page.html'),
- new SimpleGetEncoding());
- }
-
- function testNoCookieJarIsSentToRequestWhenCookiesAreDisabled() {
- $request = new MockSimpleHttpRequest();
- $request->returns('fetch', $this->createStandardResponse());
- $request->expectNever('readCookiesFromJar');
-
- $agent = $this->createMockedRequestUserAgent($request);
- $agent->setCookie('a', 'A');
- $agent->ignoreCookies();
- $agent->fetchResponse(
- new SimpleUrl('http://this.com/this/path/page.html'),
- new SimpleGetEncoding());
- }
-
- function testReadingNewCookie() {
- $request = $this->createCookieSite('Set-cookie: a=AAAA');
- $agent = $this->createMockedRequestUserAgent($request);
- $agent->fetchResponse(
- new SimpleUrl('http://this.com/this/path/page.html'),
- new SimpleGetEncoding());
- $this->assertEqual($agent->getCookieValue("this.com", "this/path/", "a"), "AAAA");
- }
-
- function testIgnoringNewCookieWhenCookiesDisabled() {
- $request = $this->createCookieSite('Set-cookie: a=AAAA');
- $agent = $this->createMockedRequestUserAgent($request);
- $agent->ignoreCookies();
- $agent->fetchResponse(
- new SimpleUrl('http://this.com/this/path/page.html'),
- new SimpleGetEncoding());
- $this->assertIdentical($agent->getCookieValue("this.com", "this/path/", "a"), false);
- }
-
- function testOverwriteCookieThatAlreadyExists() {
- $request = $this->createCookieSite('Set-cookie: a=AAAA');
- $agent = $this->createMockedRequestUserAgent($request);
- $agent->setCookie('a', 'A');
- $agent->fetchResponse(
- new SimpleUrl('http://this.com/this/path/page.html'),
- new SimpleGetEncoding());
- $this->assertEqual($agent->getCookieValue("this.com", "this/path/", "a"), "AAAA");
- }
-
- function testClearCookieBySettingExpiry() {
- $request = $this->createCookieSite('Set-cookie: a=b');
- $agent = $this->createMockedRequestUserAgent($request);
-
- $agent->setCookie("a", "A", "this/path/", "Wed, 25-Dec-02 04:24:21 GMT");
- $agent->fetchResponse(
- new SimpleUrl('http://this.com/this/path/page.html'),
- new SimpleGetEncoding());
- $this->assertIdentical(
- $agent->getCookieValue("this.com", "this/path/", "a"),
- "b");
- $agent->restart("Wed, 25-Dec-02 04:24:20 GMT");
- $this->assertIdentical(
- $agent->getCookieValue("this.com", "this/path/", "a"),
- false);
- }
-
- function testAgeingAndClearing() {
- $request = $this->createCookieSite('Set-cookie: a=A; expires=Wed, 25-Dec-02 04:24:21 GMT; path=/this/path');
- $agent = $this->createMockedRequestUserAgent($request);
-
- $agent->fetchResponse(
- new SimpleUrl('http://this.com/this/path/page.html'),
- new SimpleGetEncoding());
- $agent->restart("Wed, 25-Dec-02 04:24:20 GMT");
- $this->assertIdentical(
- $agent->getCookieValue("this.com", "this/path/", "a"),
- "A");
- $agent->ageCookies(2);
- $agent->restart("Wed, 25-Dec-02 04:24:20 GMT");
- $this->assertIdentical(
- $agent->getCookieValue("this.com", "this/path/", "a"),
- false);
- }
-
- function testReadingIncomingAndSettingNewCookies() {
- $request = $this->createCookieSite('Set-cookie: a=AAA');
- $agent = $this->createMockedRequestUserAgent($request);
-
- $this->assertNull($agent->getBaseCookieValue("a", false));
- $agent->fetchResponse(
- new SimpleUrl('http://this.com/this/path/page.html'),
- new SimpleGetEncoding());
- $agent->setCookie("b", "BBB", "this.com", "this/path/");
- $this->assertEqual(
- $agent->getBaseCookieValue("a", new SimpleUrl('http://this.com/this/path/page.html')),
- "AAA");
- $this->assertEqual(
- $agent->getBaseCookieValue("b", new SimpleUrl('http://this.com/this/path/page.html')),
- "BBB");
- }
-}
-
-class TestOfHttpRedirects extends UnitTestCase {
-
- function createRedirect($content, $redirect) {
- $headers = new MockSimpleHttpHeaders();
- $headers->setReturnValue('isRedirect', (boolean)$redirect);
- $headers->setReturnValue('getLocation', $redirect);
- $response = new MockSimpleHttpResponse();
- $response->setReturnValue('getContent', $content);
- $response->setReturnReference('getHeaders', $headers);
- $request = new MockSimpleHttpRequest();
- $request->setReturnReference('fetch', $response);
- return $request;
- }
-
- function testDisabledRedirects() {
- $agent = new MockRequestUserAgent();
- $agent->returns(
- 'createHttpRequest',
- $this->createRedirect('stuff', 'there.html'));
- $agent->expectOnce('createHttpRequest');
- $agent->__construct();
- $agent->setMaximumRedirects(0);
- $response = $agent->fetchResponse(new SimpleUrl('here.html'), new SimpleGetEncoding());
- $this->assertEqual($response->getContent(), 'stuff');
- }
-
- function testSingleRedirect() {
- $agent = new MockRequestUserAgent();
- $agent->returnsAt(
- 0,
- 'createHttpRequest',
- $this->createRedirect('first', 'two.html'));
- $agent->returnsAt(
- 1,
- 'createHttpRequest',
- $this->createRedirect('second', 'three.html'));
- $agent->expectCallCount('createHttpRequest', 2);
- $agent->__construct();
-
- $agent->setMaximumRedirects(1);
- $response = $agent->fetchResponse(new SimpleUrl('one.html'), new SimpleGetEncoding());
- $this->assertEqual($response->getContent(), 'second');
- }
-
- function testDoubleRedirect() {
- $agent = new MockRequestUserAgent();
- $agent->returnsAt(
- 0,
- 'createHttpRequest',
- $this->createRedirect('first', 'two.html'));
- $agent->returnsAt(
- 1,
- 'createHttpRequest',
- $this->createRedirect('second', 'three.html'));
- $agent->returnsAt(
- 2,
- 'createHttpRequest',
- $this->createRedirect('third', 'four.html'));
- $agent->expectCallCount('createHttpRequest', 3);
- $agent->__construct();
-
- $agent->setMaximumRedirects(2);
- $response = $agent->fetchResponse(new SimpleUrl('one.html'), new SimpleGetEncoding());
- $this->assertEqual($response->getContent(), 'third');
- }
-
- function testSuccessAfterRedirect() {
- $agent = new MockRequestUserAgent();
- $agent->returnsAt(
- 0,
- 'createHttpRequest',
- $this->createRedirect('first', 'two.html'));
- $agent->returnsAt(
- 1,
- 'createHttpRequest',
- $this->createRedirect('second', false));
- $agent->returnsAt(
- 2,
- 'createHttpRequest',
- $this->createRedirect('third', 'four.html'));
- $agent->expectCallCount('createHttpRequest', 2);
- $agent->__construct();
-
- $agent->setMaximumRedirects(2);
- $response = $agent->fetchResponse(new SimpleUrl('one.html'), new SimpleGetEncoding());
- $this->assertEqual($response->getContent(), 'second');
- }
-
- function testRedirectChangesPostToGet() {
- $agent = new MockRequestUserAgent();
- $agent->returnsAt(
- 0,
- 'createHttpRequest',
- $this->createRedirect('first', 'two.html'));
- $agent->expectAt(0, 'createHttpRequest', array('*', new IsAExpectation('SimplePostEncoding')));
- $agent->returnsAt(
- 1,
- 'createHttpRequest',
- $this->createRedirect('second', 'three.html'));
- $agent->expectAt(1, 'createHttpRequest', array('*', new IsAExpectation('SimpleGetEncoding')));
- $agent->expectCallCount('createHttpRequest', 2);
- $agent->__construct();
- $agent->setMaximumRedirects(1);
- $response = $agent->fetchResponse(new SimpleUrl('one.html'), new SimplePostEncoding());
- }
-}
-
-class TestOfBadHosts extends UnitTestCase {
-
- private function createSimulatedBadHost() {
- $response = new MockSimpleHttpResponse();
- $response->setReturnValue('isError', true);
- $response->setReturnValue('getError', 'Bad socket');
- $response->setReturnValue('getContent', false);
- $request = new MockSimpleHttpRequest();
- $request->setReturnReference('fetch', $response);
- return $request;
- }
-
- function testUntestedHost() {
- $request = $this->createSimulatedBadHost();
- $agent = new MockRequestUserAgent();
- $agent->setReturnReference('createHttpRequest', $request);
- $agent->__construct();
- $response = $agent->fetchResponse(
- new SimpleUrl('http://this.host/this/path/page.html'),
- new SimpleGetEncoding());
- $this->assertTrue($response->isError());
- }
-}
-
-class TestOfAuthorisation extends UnitTestCase {
-
- function testAuthenticateHeaderAdded() {
- $response = new MockSimpleHttpResponse();
- $response->setReturnReference('getHeaders', new MockSimpleHttpHeaders());
-
- $request = new MockSimpleHttpRequest();
- $request->returns('fetch', $response);
- $request->expectOnce(
- 'addHeaderLine',
- array('Authorization: Basic ' . base64_encode('test:secret')));
-
- $agent = new MockRequestUserAgent();
- $agent->returns('createHttpRequest', $request);
- $agent->__construct();
- $response = $agent->fetchResponse(
- new SimpleUrl('http://test:secret@this.host'),
- new SimpleGetEncoding());
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/visual_test.php b/3rdparty/simpletest/test/visual_test.php
deleted file mode 100644
index 6b9d085d67f..00000000000
--- a/3rdparty/simpletest/test/visual_test.php
+++ /dev/null
@@ -1,495 +0,0 @@
-<?php
-// $Id: visual_test.php 1884 2009-07-01 16:30:40Z lastcraft $
-
-// NOTE:
-// Some of these tests are designed to fail! Do not be alarmed.
-// ----------------
-
-// The following tests are a bit hacky. Whilst Kent Beck tried to
-// build a unit tester with a unit tester, I am not that brave.
-// Instead I have just hacked together odd test scripts until
-// I have enough of a tester to procede more formally.
-//
-// The proper tests start in all_tests.php
-require_once('../unit_tester.php');
-require_once('../shell_tester.php');
-require_once('../mock_objects.php');
-require_once('../reporter.php');
-require_once('../xml.php');
-
-class TestDisplayClass {
- private $a;
-
- function TestDisplayClass($a) {
- $this->a = $a;
- }
-}
-
-class PassingUnitTestCaseOutput extends UnitTestCase {
-
- function testOfResults() {
- $this->pass('Pass');
- }
-
- function testTrue() {
- $this->assertTrue(true);
- }
-
- function testFalse() {
- $this->assertFalse(false);
- }
-
- function testExpectation() {
- $expectation = &new EqualExpectation(25, 'My expectation message: %s');
- $this->assert($expectation, 25, 'My assert message : %s');
- }
-
- function testNull() {
- $this->assertNull(null, "%s -> Pass");
- $this->assertNotNull(false, "%s -> Pass");
- }
-
- function testType() {
- $this->assertIsA("hello", "string", "%s -> Pass");
- $this->assertIsA($this, "PassingUnitTestCaseOutput", "%s -> Pass");
- $this->assertIsA($this, "UnitTestCase", "%s -> Pass");
- }
-
- function testTypeEquality() {
- $this->assertEqual("0", 0, "%s -> Pass");
- }
-
- function testNullEquality() {
- $this->assertNotEqual(null, 1, "%s -> Pass");
- $this->assertNotEqual(1, null, "%s -> Pass");
- }
-
- function testIntegerEquality() {
- $this->assertNotEqual(1, 2, "%s -> Pass");
- }
-
- function testStringEquality() {
- $this->assertEqual("a", "a", "%s -> Pass");
- $this->assertNotEqual("aa", "ab", "%s -> Pass");
- }
-
- function testHashEquality() {
- $this->assertEqual(array("a" => "A", "b" => "B"), array("b" => "B", "a" => "A"), "%s -> Pass");
- }
-
- function testWithin() {
- $this->assertWithinMargin(5, 5.4, 0.5, "%s -> Pass");
- }
-
- function testOutside() {
- $this->assertOutsideMargin(5, 5.6, 0.5, "%s -> Pass");
- }
-
- function testStringIdentity() {
- $a = "fred";
- $b = $a;
- $this->assertIdentical($a, $b, "%s -> Pass");
- }
-
- function testTypeIdentity() {
- $a = "0";
- $b = 0;
- $this->assertNotIdentical($a, $b, "%s -> Pass");
- }
-
- function testNullIdentity() {
- $this->assertNotIdentical(null, 1, "%s -> Pass");
- $this->assertNotIdentical(1, null, "%s -> Pass");
- }
-
- function testHashIdentity() {
- }
-
- function testObjectEquality() {
- $this->assertEqual(new TestDisplayClass(4), new TestDisplayClass(4), "%s -> Pass");
- $this->assertNotEqual(new TestDisplayClass(4), new TestDisplayClass(5), "%s -> Pass");
- }
-
- function testObjectIndentity() {
- $this->assertIdentical(new TestDisplayClass(false), new TestDisplayClass(false), "%s -> Pass");
- $this->assertNotIdentical(new TestDisplayClass(false), new TestDisplayClass(0), "%s -> Pass");
- }
-
- function testReference() {
- $a = "fred";
- $b = &$a;
- $this->assertReference($a, $b, "%s -> Pass");
- }
-
- function testCloneOnDifferentObjects() {
- $a = "fred";
- $b = $a;
- $c = "Hello";
- $this->assertClone($a, $b, "%s -> Pass");
- }
-
- function testPatterns() {
- $this->assertPattern('/hello/i', "Hello there", "%s -> Pass");
- $this->assertNoPattern('/hello/', "Hello there", "%s -> Pass");
- }
-
- function testLongStrings() {
- $text = "";
- for ($i = 0; $i < 10; $i++) {
- $text .= "0123456789";
- }
- $this->assertEqual($text, $text);
- }
-}
-
-class FailingUnitTestCaseOutput extends UnitTestCase {
-
- function testOfResults() {
- $this->fail('Fail'); // Fail.
- }
-
- function testTrue() {
- $this->assertTrue(false); // Fail.
- }
-
- function testFalse() {
- $this->assertFalse(true); // Fail.
- }
-
- function testExpectation() {
- $expectation = &new EqualExpectation(25, 'My expectation message: %s');
- $this->assert($expectation, 24, 'My assert message : %s'); // Fail.
- }
-
- function testNull() {
- $this->assertNull(false, "%s -> Fail"); // Fail.
- $this->assertNotNull(null, "%s -> Fail"); // Fail.
- }
-
- function testType() {
- $this->assertIsA(14, "string", "%s -> Fail"); // Fail.
- $this->assertIsA(14, "TestOfUnitTestCaseOutput", "%s -> Fail"); // Fail.
- $this->assertIsA($this, "TestReporter", "%s -> Fail"); // Fail.
- }
-
- function testTypeEquality() {
- $this->assertNotEqual("0", 0, "%s -> Fail"); // Fail.
- }
-
- function testNullEquality() {
- $this->assertEqual(null, 1, "%s -> Fail"); // Fail.
- $this->assertEqual(1, null, "%s -> Fail"); // Fail.
- }
-
- function testIntegerEquality() {
- $this->assertEqual(1, 2, "%s -> Fail"); // Fail.
- }
-
- function testStringEquality() {
- $this->assertNotEqual("a", "a", "%s -> Fail"); // Fail.
- $this->assertEqual("aa", "ab", "%s -> Fail"); // Fail.
- }
-
- function testHashEquality() {
- $this->assertEqual(array("a" => "A", "b" => "B"), array("b" => "B", "a" => "Z"), "%s -> Fail");
- }
-
- function testWithin() {
- $this->assertWithinMargin(5, 5.6, 0.5, "%s -> Fail"); // Fail.
- }
-
- function testOutside() {
- $this->assertOutsideMargin(5, 5.4, 0.5, "%s -> Fail"); // Fail.
- }
-
- function testStringIdentity() {
- $a = "fred";
- $b = $a;
- $this->assertNotIdentical($a, $b, "%s -> Fail"); // Fail.
- }
-
- function testTypeIdentity() {
- $a = "0";
- $b = 0;
- $this->assertIdentical($a, $b, "%s -> Fail"); // Fail.
- }
-
- function testNullIdentity() {
- $this->assertIdentical(null, 1, "%s -> Fail"); // Fail.
- $this->assertIdentical(1, null, "%s -> Fail"); // Fail.
- }
-
- function testHashIdentity() {
- $this->assertIdentical(array("a" => "A", "b" => "B"), array("b" => "B", "a" => "A"), "%s -> fail"); // Fail.
- }
-
- function testObjectEquality() {
- $this->assertNotEqual(new TestDisplayClass(4), new TestDisplayClass(4), "%s -> Fail"); // Fail.
- $this->assertEqual(new TestDisplayClass(4), new TestDisplayClass(5), "%s -> Fail"); // Fail.
- }
-
- function testObjectIndentity() {
- $this->assertNotIdentical(new TestDisplayClass(false), new TestDisplayClass(false), "%s -> Fail"); // Fail.
- $this->assertIdentical(new TestDisplayClass(false), new TestDisplayClass(0), "%s -> Fail"); // Fail.
- }
-
- function testReference() {
- $a = "fred";
- $b = &$a;
- $this->assertClone($a, $b, "%s -> Fail"); // Fail.
- }
-
- function testCloneOnDifferentObjects() {
- $a = "fred";
- $b = $a;
- $c = "Hello";
- $this->assertClone($a, $c, "%s -> Fail"); // Fail.
- }
-
- 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->expect('a', array());
- $dummy->a();
- $dummy->a(null); // Fail.
- }
-
- function testEmptyMatchingWithCustomMessage() {
- $dummy = &new MockDummy();
- $dummy->expect('a', array(), 'My expectation message: %s');
- $dummy->a();
- $dummy->a(null); // Fail.
- }
-
- function testNullMatching() {
- $dummy = &new MockDummy();
- $dummy->expect('a', array(null));
- $dummy->a(null);
- $dummy->a(); // Fail.
- }
-
- function testBooleanMatching() {
- $dummy = &new MockDummy();
- $dummy->expect('a', array(true, false));
- $dummy->a(true, false);
- $dummy->a(true, true); // Fail.
- }
-
- function testIntegerMatching() {
- $dummy = &new MockDummy();
- $dummy->expect('a', array(32, 33));
- $dummy->a(32, 33);
- $dummy->a(32, 34); // Fail.
- }
-
- function testFloatMatching() {
- $dummy = &new MockDummy();
- $dummy->expect('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->expect('a', array('32', '33'));
- $dummy->a('32', '33');
- $dummy->a('32', '34'); // Fail.
- }
-
- function testEmptyMatchingWithCustomExpectationMessage() {
- $dummy = &new MockDummy();
- $dummy->expect(
- '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->expect('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->expect('a', array($a, $b));
- $dummy->a($a, $b);
- $dummy->a($a, $a); // Fail.
- }
-
- function testBigList() {
- $dummy = &new MockDummy();
- $dummy->expect('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->expect('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 {
-
- protected 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->add(new PassingUnitTestCaseOutput());
-$test->add(new FailingUnitTestCaseOutput());
-$test->add(new TestOfMockObjectsOutput());
-$test->add(new TestOfPastBugs());
-$test->add(new TestOfVisualShell());
-$test->add(new TestOfSkippingNoMatterWhat());
-$test->add(new TestOfSkippingOrElse());
-$test->add(new TestOfSkippingTwiceOver());
-$test->add(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);
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/web_tester_test.php b/3rdparty/simpletest/test/web_tester_test.php
deleted file mode 100644
index 8c3bf1adf63..00000000000
--- a/3rdparty/simpletest/test/web_tester_test.php
+++ /dev/null
@@ -1,155 +0,0 @@
-<?php
-// $Id: web_tester_test.php 1748 2008-04-14 01:50:41Z 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');
- }
-}
-?> \ No newline at end of file
diff --git a/3rdparty/simpletest/test/xml_test.php b/3rdparty/simpletest/test/xml_test.php
deleted file mode 100644
index f99e0dcd98b..00000000000
--- a/3rdparty/simpletest/test/xml_test.php
+++ /dev/null
@@ -1,187 +0,0 @@
-<?php
-// $Id: xml_test.php 1787 2008-04-26 20:35:39Z pp11 $
-require_once(dirname(__FILE__) . '/../autorun.php');
-require_once(dirname(__FILE__) . '/../xml.php');
-Mock::generate('SimpleScorer');
-
-if (! function_exists('xml_parser_create')) {
- SimpleTest::ignore('TestOfXmlStructureParsing');
- SimpleTest::ignore('TestOfXmlResultsParsing');
-}
-
-class TestOfNestingTags extends UnitTestCase {
- function testGroupSize() {
- $nesting = new NestingGroupTag(array('SIZE' => 2));
- $this->assertEqual($nesting->getSize(), 2);
- }
-}
-
-class TestOfXmlStructureParsing extends UnitTestCase {
- function testValidXml() {
- $listener = new MockSimpleScorer();
- $listener->expectNever('paintGroupStart');
- $listener->expectNever('paintGroupEnd');
- $listener->expectNever('paintCaseStart');
- $listener->expectNever('paintCaseEnd');
- $parser = new SimpleTestXmlParser($listener);
- $this->assertTrue($parser->parse("<?xml version=\"1.0\"?>\n"));
- $this->assertTrue($parser->parse("<run>\n"));
- $this->assertTrue($parser->parse("</run>\n"));
- }
-
- function testEmptyGroup() {
- $listener = new MockSimpleScorer();
- $listener->expectOnce('paintGroupStart', array('a_group', 7));
- $listener->expectOnce('paintGroupEnd', array('a_group'));
- $parser = new SimpleTestXmlParser($listener);
- $parser->parse("<?xml version=\"1.0\"?>\n");
- $parser->parse("<run>\n");
- $this->assertTrue($parser->parse("<group size=\"7\">\n"));
- $this->assertTrue($parser->parse("<name>a_group</name>\n"));
- $this->assertTrue($parser->parse("</group>\n"));
- $parser->parse("</run>\n");
- }
-
- function testEmptyCase() {
- $listener = new MockSimpleScorer();
- $listener->expectOnce('paintCaseStart', array('a_case'));
- $listener->expectOnce('paintCaseEnd', array('a_case'));
- $parser = new SimpleTestXmlParser($listener);
- $parser->parse("<?xml version=\"1.0\"?>\n");
- $parser->parse("<run>\n");
- $this->assertTrue($parser->parse("<case>\n"));
- $this->assertTrue($parser->parse("<name>a_case</name>\n"));
- $this->assertTrue($parser->parse("</case>\n"));
- $parser->parse("</run>\n");
- }
-
- function testEmptyMethod() {
- $listener = new MockSimpleScorer();
- $listener->expectOnce('paintCaseStart', array('a_case'));
- $listener->expectOnce('paintCaseEnd', array('a_case'));
- $listener->expectOnce('paintMethodStart', array('a_method'));
- $listener->expectOnce('paintMethodEnd', array('a_method'));
- $parser = new SimpleTestXmlParser($listener);
- $parser->parse("<?xml version=\"1.0\"?>\n");
- $parser->parse("<run>\n");
- $parser->parse("<case>\n");
- $parser->parse("<name>a_case</name>\n");
- $this->assertTrue($parser->parse("<test>\n"));
- $this->assertTrue($parser->parse("<name>a_method</name>\n"));
- $this->assertTrue($parser->parse("</test>\n"));
- $parser->parse("</case>\n");
- $parser->parse("</run>\n");
- }
-
- function testNestedGroup() {
- $listener = new MockSimpleScorer();
- $listener->expectAt(0, 'paintGroupStart', array('a_group', 7));
- $listener->expectAt(1, 'paintGroupStart', array('b_group', 3));
- $listener->expectCallCount('paintGroupStart', 2);
- $listener->expectAt(0, 'paintGroupEnd', array('b_group'));
- $listener->expectAt(1, 'paintGroupEnd', array('a_group'));
- $listener->expectCallCount('paintGroupEnd', 2);
-
- $parser = new SimpleTestXmlParser($listener);
- $parser->parse("<?xml version=\"1.0\"?>\n");
- $parser->parse("<run>\n");
-
- $this->assertTrue($parser->parse("<group size=\"7\">\n"));
- $this->assertTrue($parser->parse("<name>a_group</name>\n"));
- $this->assertTrue($parser->parse("<group size=\"3\">\n"));
- $this->assertTrue($parser->parse("<name>b_group</name>\n"));
- $this->assertTrue($parser->parse("</group>\n"));
- $this->assertTrue($parser->parse("</group>\n"));
- $parser->parse("</run>\n");
- }
-}
-
-class AnyOldSignal {
- public $stuff = true;
-}
-
-class TestOfXmlResultsParsing extends UnitTestCase {
-
- function sendValidStart(&$parser) {
- $parser->parse("<?xml version=\"1.0\"?>\n");
- $parser->parse("<run>\n");
- $parser->parse("<case>\n");
- $parser->parse("<name>a_case</name>\n");
- $parser->parse("<test>\n");
- $parser->parse("<name>a_method</name>\n");
- }
-
- function sendValidEnd(&$parser) {
- $parser->parse("</test>\n");
- $parser->parse("</case>\n");
- $parser->parse("</run>\n");
- }
-
- function testPass() {
- $listener = new MockSimpleScorer();
- $listener->expectOnce('paintPass', array('a_message'));
- $parser = new SimpleTestXmlParser($listener);
- $this->sendValidStart($parser);
- $this->assertTrue($parser->parse("<pass>a_message</pass>\n"));
- $this->sendValidEnd($parser);
- }
-
- function testFail() {
- $listener = new MockSimpleScorer();
- $listener->expectOnce('paintFail', array('a_message'));
- $parser = new SimpleTestXmlParser($listener);
- $this->sendValidStart($parser);
- $this->assertTrue($parser->parse("<fail>a_message</fail>\n"));
- $this->sendValidEnd($parser);
- }
-
- function testException() {
- $listener = new MockSimpleScorer();
- $listener->expectOnce('paintError', array('a_message'));
- $parser = new SimpleTestXmlParser($listener);
- $this->sendValidStart($parser);
- $this->assertTrue($parser->parse("<exception>a_message</exception>\n"));
- $this->sendValidEnd($parser);
- }
-
- function testSkip() {
- $listener = new MockSimpleScorer();
- $listener->expectOnce('paintSkip', array('a_message'));
- $parser = new SimpleTestXmlParser($listener);
- $this->sendValidStart($parser);
- $this->assertTrue($parser->parse("<skip>a_message</skip>\n"));
- $this->sendValidEnd($parser);
- }
-
- function testSignal() {
- $signal = new AnyOldSignal();
- $signal->stuff = "Hello";
- $listener = new MockSimpleScorer();
- $listener->expectOnce('paintSignal', array('a_signal', $signal));
- $parser = new SimpleTestXmlParser($listener);
- $this->sendValidStart($parser);
- $this->assertTrue($parser->parse(
- "<signal type=\"a_signal\"><![CDATA[" .
- serialize($signal) . "]]></signal>\n"));
- $this->sendValidEnd($parser);
- }
-
- function testMessage() {
- $listener = new MockSimpleScorer();
- $listener->expectOnce('paintMessage', array('a_message'));
- $parser = new SimpleTestXmlParser($listener);
- $this->sendValidStart($parser);
- $this->assertTrue($parser->parse("<message>a_message</message>\n"));
- $this->sendValidEnd($parser);
- }
-
- function testFormattedMessage() {
- $listener = new MockSimpleScorer();
- $listener->expectOnce('paintFormattedMessage', array("\na\tmessage\n"));
- $parser = new SimpleTestXmlParser($listener);
- $this->sendValidStart($parser);
- $this->assertTrue($parser->parse("<formatted><![CDATA[\na\tmessage\n]]></formatted>\n"));
- $this->sendValidEnd($parser);
- }
-}
-?> \ No newline at end of file