]> source.dussan.org Git - nextcloud-server.git/commitdiff
remove simpletests internet test cases due to xss issues
authorRobin Appelman <icewind@owncloud.com>
Mon, 14 May 2012 21:12:16 +0000 (23:12 +0200)
committerRobin Appelman <icewind@owncloud.com>
Mon, 14 May 2012 21:12:16 +0000 (23:12 +0200)
58 files changed:
3rdparty/simpletest/test/acceptance_test.php [deleted file]
3rdparty/simpletest/test/adapter_test.php [deleted file]
3rdparty/simpletest/test/all_tests.php [deleted file]
3rdparty/simpletest/test/arguments_test.php [deleted file]
3rdparty/simpletest/test/authentication_test.php [deleted file]
3rdparty/simpletest/test/autorun_test.php [deleted file]
3rdparty/simpletest/test/bad_test_suite.php [deleted file]
3rdparty/simpletest/test/browser_test.php [deleted file]
3rdparty/simpletest/test/collector_test.php [deleted file]
3rdparty/simpletest/test/command_line_test.php [deleted file]
3rdparty/simpletest/test/compatibility_test.php [deleted file]
3rdparty/simpletest/test/cookies_test.php [deleted file]
3rdparty/simpletest/test/detached_test.php [deleted file]
3rdparty/simpletest/test/dumper_test.php [deleted file]
3rdparty/simpletest/test/eclipse_test.php [deleted file]
3rdparty/simpletest/test/encoding_test.php [deleted file]
3rdparty/simpletest/test/errors_test.php [deleted file]
3rdparty/simpletest/test/exceptions_test.php [deleted file]
3rdparty/simpletest/test/expectation_test.php [deleted file]
3rdparty/simpletest/test/form_test.php [deleted file]
3rdparty/simpletest/test/frames_test.php [deleted file]
3rdparty/simpletest/test/http_test.php [deleted file]
3rdparty/simpletest/test/interfaces_test.php [deleted file]
3rdparty/simpletest/test/interfaces_test_php5_1.php [deleted file]
3rdparty/simpletest/test/live_test.php [deleted file]
3rdparty/simpletest/test/mock_objects_test.php [deleted file]
3rdparty/simpletest/test/page_test.php [deleted file]
3rdparty/simpletest/test/parse_error_test.php [deleted file]
3rdparty/simpletest/test/parsing_test.php [deleted file]
3rdparty/simpletest/test/php_parser_test.php [deleted file]
3rdparty/simpletest/test/recorder_test.php [deleted file]
3rdparty/simpletest/test/reflection_php5_test.php [deleted file]
3rdparty/simpletest/test/remote_test.php [deleted file]
3rdparty/simpletest/test/shell_test.php [deleted file]
3rdparty/simpletest/test/shell_tester_test.php [deleted file]
3rdparty/simpletest/test/simpletest_test.php [deleted file]
3rdparty/simpletest/test/site/file.html [deleted file]
3rdparty/simpletest/test/socket_test.php [deleted file]
3rdparty/simpletest/test/support/collector/collectable.1 [deleted file]
3rdparty/simpletest/test/support/collector/collectable.2 [deleted file]
3rdparty/simpletest/test/support/empty_test_file.php [deleted file]
3rdparty/simpletest/test/support/failing_test.php [deleted file]
3rdparty/simpletest/test/support/latin1_sample [deleted file]
3rdparty/simpletest/test/support/passing_test.php [deleted file]
3rdparty/simpletest/test/support/recorder_sample.php [deleted file]
3rdparty/simpletest/test/support/spl_examples.php [deleted file]
3rdparty/simpletest/test/support/supplementary_upload_sample.txt [deleted file]
3rdparty/simpletest/test/support/test1.php [deleted file]
3rdparty/simpletest/test/support/upload_sample.txt [deleted file]
3rdparty/simpletest/test/tag_test.php [deleted file]
3rdparty/simpletest/test/test_with_parse_error.php [deleted file]
3rdparty/simpletest/test/unit_tester_test.php [deleted file]
3rdparty/simpletest/test/unit_tests.php [deleted file]
3rdparty/simpletest/test/url_test.php [deleted file]
3rdparty/simpletest/test/user_agent_test.php [deleted file]
3rdparty/simpletest/test/visual_test.php [deleted file]
3rdparty/simpletest/test/web_tester_test.php [deleted file]
3rdparty/simpletest/test/xml_test.php [deleted file]

diff --git a/3rdparty/simpletest/test/acceptance_test.php b/3rdparty/simpletest/test/acceptance_test.php
deleted file mode 100644 (file)
index e96fe73..0000000
+++ /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 (file)
index c1a06a2..0000000
+++ /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 (file)
index 99ce945..0000000
+++ /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 (file)
index 0cca4e9..0000000
+++ /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 (file)
index 081cccd..0000000
+++ /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 (file)
index d85ea19..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php\r
-require_once(dirname(__FILE__) . '/../autorun.php');\r
-require_once(dirname(__FILE__) . '/support/test1.php');\r
-\r
-class TestOfAutorun extends UnitTestCase {\r
-    function testLoadIfIncluded() {\r
-        $tests = new TestSuite();\r
-        $tests->addFile(dirname(__FILE__) . '/support/test1.php');\r
-        $this->assertEqual($tests->getSize(), 1);\r
-    }\r
-\r
-    function testExitStatusOneIfTestsFail() {\r
-        exec('php ' . dirname(__FILE__) . '/support/failing_test.php', $output, $exit_status);\r
-        $this->assertEqual($exit_status, 1);\r
-    }\r
-\r
-    function testExitStatusZeroIfTestsPass() {\r
-        exec('php ' . dirname(__FILE__) . '/support/passing_test.php', $output, $exit_status);\r
-        $this->assertEqual($exit_status, 0);\r
-    }\r
-}\r
-\r
-?>
\ 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 (file)
index b426013..0000000
+++ /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 (file)
index 3a52aaa..0000000
+++ /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 (file)
index efdbf37..0000000
+++ /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 (file)
index 5baabff..0000000
+++ /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 (file)
index b8635e5..0000000
+++ /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 (file)
index 0b49e43..0000000
+++ /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 (file)
index f651d97..0000000
+++ /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 (file)
index 789047d..0000000
+++ /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 (file)
index c90cbc9..0000000
+++ /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 (file)
index a09236e..0000000
+++ /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 (file)
index ebb9e05..0000000
+++ /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 (file)
index 1011543..0000000
+++ /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 (file)
index 31fbe65..0000000
+++ /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 (file)
index 70a18f2..0000000
+++ /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 (file)
index 2930970..0000000
+++ /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 (file)
index bd3fdd0..0000000
+++ /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 (file)
index ab30fe4..0000000
+++ /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 (file)
index 3d154f9..0000000
+++ /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 (file)
index 3fbb544..0000000
+++ /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 (file)
index 7f31789..0000000
+++ /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 (file)
index fdc15c5..0000000
+++ /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 (file)
index c3ffb3d..0000000
+++ /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 (file)
index 2c5e6ca..0000000
+++ /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 (file)
index d95c7d0..0000000
+++ /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 (file)
index fdae4c1..0000000
+++ /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 (file)
index d9f46e6..0000000
+++ /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 (file)
index 5f3f96a..0000000
+++ /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 (file)
index d1d769a..0000000
+++ /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 (file)
index b12c602..0000000
+++ /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 (file)
index daa65c6..0000000
+++ /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 (file)
index cc41aee..0000000
+++ /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 (file)
index 729adda..0000000
+++ /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 (file)
index e69de29..0000000
diff --git a/3rdparty/simpletest/test/support/collector/collectable.2 b/3rdparty/simpletest/test/support/collector/collectable.2
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/3rdparty/simpletest/test/support/empty_test_file.php b/3rdparty/simpletest/test/support/empty_test_file.php
deleted file mode 100644 (file)
index 31e3f7b..0000000
+++ /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 (file)
index 30f0d75..0000000
+++ /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 (file)
index 1903525..0000000
+++ /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 (file)
index b786321..0000000
+++ /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 (file)
index 4f157f6..0000000
+++ /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 (file)
index 45add35..0000000
+++ /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 (file)
index d8aa9e8..0000000
+++ /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 (file)
index b414586..0000000
+++ /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 (file)
index ec98d7c..0000000
+++ /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 (file)
index 5e8a377..0000000
+++ /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 (file)
index 41a5832..0000000
+++ /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 (file)
index ce9850f..0000000
+++ /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 (file)
index 9e62129..0000000
+++ /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 (file)
index 80119af..0000000
+++ /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 (file)
index 030abeb..0000000
+++ /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 (file)
index 6b9d085..0000000
+++ /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 (file)
index 8c3bf1a..0000000
+++ /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 (file)
index f99e0dc..0000000
+++ /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