url_test.php.svn-base
来自「PHP 知识管理系统(基于树结构的知识管理系统), 英文原版的PHP源码。」· SVN-BASE 代码 · 共 88 行
SVN-BASE
88 行
<?php// $Id: url_test.php 1598 2007-12-24 10:44:09Z 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', '?!"\'#~@[]{}:;<>,./|
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?