mirror of
https://github.com/getgrav/grav.git
synced 2025-02-20 19:56:53 +01:00
Test Uri paths(), route(), query(), params()
This commit is contained in:
parent
90568da797
commit
1a5abcbcbc
|
|
@ -78,6 +78,112 @@ class UriTest extends \Codeception\TestCase\Test
|
|||
$this->assertTrue($uri->params() == null);
|
||||
}
|
||||
|
||||
public function testPaths()
|
||||
{
|
||||
$uri = $this->getURI();
|
||||
|
||||
$uri->initializeWithURL('http://localhost:8080/grav/it/ueper')->init();
|
||||
$this->assertsame($uri->paths(), ['grav', 'it', 'ueper']);
|
||||
$uri->initializeWithURL('http://localhost:8080/grav/it/ueper:xxx')->init();
|
||||
$this->assertsame($uri->paths(), ['grav', 'it']);
|
||||
$uri->initializeWithURL('http://localhost:8080/grav/it/ueper?test=x')->init();
|
||||
$this->assertsame($uri->paths(), ['grav', 'it', 'ueper']);
|
||||
$uri->initializeWithURL('http://localhost:8080/a/b/c/d')->init();
|
||||
$this->assertsame($uri->paths(), ['a', 'b', 'c', 'd']);
|
||||
$uri->initializeWithURL('http://localhost:8080/a/b/c/d/e/f/a/b/c/d/e/f/a/b/c/d/e/f')->init();
|
||||
$this->assertsame($uri->paths(), ['a', 'b', 'c', 'd', 'e', 'f', 'a', 'b', 'c', 'd', 'e', 'f', 'a', 'b', 'c', 'd', 'e', 'f']);
|
||||
}
|
||||
|
||||
public function testRoute()
|
||||
{
|
||||
$uri = $this->getURI();
|
||||
|
||||
$uri->initializeWithURL('http://localhost:8080/grav/it/ueper')->init();
|
||||
$this->assertsame($uri->route(), '/grav/it/ueper');
|
||||
$uri->initializeWithURL('http://localhost:8080/grav/it/ueper:xxx')->init();
|
||||
$this->assertsame($uri->route(), '/grav/it');
|
||||
$uri->initializeWithURL('http://localhost:8080/grav/it/ueper?test=x')->init();
|
||||
$this->assertsame($uri->route(), '/grav/it/ueper');
|
||||
$uri->initializeWithURL('http://localhost:8080/a/b/c/d')->init();
|
||||
$this->assertsame($uri->route(), '/a/b/c/d');
|
||||
$uri->initializeWithURL('http://localhost:8080/a/b/c/d/e/f/a/b/c/d/e/f/a/b/c/d/e/f')->init();
|
||||
$this->assertsame($uri->route(), '/a/b/c/d/e/f/a/b/c/d/e/f/a/b/c/d/e/f');
|
||||
}
|
||||
|
||||
public function testQuery()
|
||||
{
|
||||
$uri = $this->getURI();
|
||||
|
||||
$uri->initializeWithURL('http://localhost:8080/grav/it/ueper')->init();
|
||||
$this->assertsame($uri->query(), '');
|
||||
$uri->initializeWithURL('http://localhost:8080/grav/it/ueper:xxx')->init();
|
||||
$this->assertsame($uri->query(), '');
|
||||
$this->assertsame($uri->query('id'), null);
|
||||
$uri->initializeWithURL('http://localhost:8080/grav/it/ueper?test=x')->init();
|
||||
$this->assertsame($uri->query(), 'test=x');
|
||||
$this->assertsame($uri->query('id'), null);
|
||||
$this->assertsame($uri->query('test'), 'x');
|
||||
$uri->initializeWithURL('http://localhost:8080/grav/it/ueper?test=x&test2=y')->init();
|
||||
$this->assertsame($uri->query(), 'test=x&test2=y');
|
||||
$this->assertsame($uri->query('id'), null);
|
||||
$this->assertsame($uri->query('test'), 'x');
|
||||
$this->assertsame($uri->query('test2'), 'y');
|
||||
$uri->initializeWithURL('http://localhost:8080/grav/it/ueper?test=x&test2=y&test3=x&test4=y')->init();
|
||||
$this->assertsame($uri->query(), 'test=x&test2=y&test3=x&test4=y');
|
||||
$this->assertsame($uri->query('id'), null);
|
||||
$this->assertsame($uri->query('test'), 'x');
|
||||
$this->assertsame($uri->query('test2'), 'y');
|
||||
$this->assertsame($uri->query('test4'), 'y');
|
||||
//Test all after the ? is encoded in the query
|
||||
$uri->initializeWithURL('http://localhost:8080/grav/it/ueper?test=x&test2=y&test3=x&test4=y/test')->init();
|
||||
$this->assertsame($uri->query(), 'test=x&test2=y&test3=x&test4=y%2Ftest');
|
||||
$this->assertsame($uri->query('id'), null);
|
||||
$this->assertsame($uri->query('test'), 'x');
|
||||
$this->assertsame($uri->query('test2'), 'y');
|
||||
$this->assertsame($uri->query('test4'), 'y/test');
|
||||
$uri->initializeWithURL('http://localhost:8080/a/b/c/d')->init();
|
||||
$this->assertsame($uri->query(), '');
|
||||
$this->assertsame($uri->query('id'), null);
|
||||
$uri->initializeWithURL('http://localhost:8080/a/b/c/d/e/f/a/b/c/d/e/f/a/b/c/d/e/f')->init();
|
||||
$this->assertsame($uri->query(), '');
|
||||
$this->assertsame($uri->query('id'), null);
|
||||
}
|
||||
|
||||
public function testParams()
|
||||
{
|
||||
$uri = $this->getURI();
|
||||
|
||||
$uri->initializeWithURL('http://localhost:8080/grav/it/ueper')->init();
|
||||
$this->assertsame($uri->params(), null);
|
||||
$uri->initializeWithURL('http://localhost:8080/grav/it/ueper:xxx')->init();
|
||||
$this->assertsame($uri->params(), '/ueper:xxx');
|
||||
$this->assertsame($uri->params('ueper'), '/ueper:xxx');
|
||||
$uri->initializeWithURL('http://localhost:8080/grav/it/ueper:xxx/test:yyy')->init();
|
||||
$this->assertsame($uri->params(), '/ueper:xxx/test:yyy');
|
||||
$this->assertsame($uri->params('ueper'), '/ueper:xxx');
|
||||
$this->assertsame($uri->params('test'), '/test:yyy');
|
||||
$uri->initializeWithURL('http://localhost:8080/grav/it/ueper?test=x')->init();
|
||||
$this->assertsame($uri->params(), null);
|
||||
$this->assertsame($uri->params('ueper'), null);
|
||||
$uri->initializeWithURL('http://localhost:8080/grav/it/ueper?test=x&test2=y')->init();
|
||||
$this->assertsame($uri->params(), null);
|
||||
$this->assertsame($uri->params('ueper'), null);
|
||||
$uri->initializeWithURL('http://localhost:8080/grav/it/ueper?test=x&test2=y&test3=x&test4=y')->init();
|
||||
$this->assertsame($uri->params(), null);
|
||||
$this->assertsame($uri->params('ueper'), null);
|
||||
$uri->initializeWithURL('http://localhost:8080/grav/it/ueper?test=x&test2=y&test3=x&test4=y/test')->init();
|
||||
$this->assertsame($uri->params(), null);
|
||||
$this->assertsame($uri->params('ueper'), null);
|
||||
$uri->initializeWithURL('http://localhost:8080/a/b/c/d')->init();
|
||||
$this->assertsame($uri->params(), null);
|
||||
$this->assertsame($uri->params('ueper'), null);
|
||||
$uri->initializeWithURL('http://localhost:8080/a/b/c/d/e/f/a/b/c/d/e/f/a/b/c/d/e/f')->init();
|
||||
$this->assertsame($uri->params(), null);
|
||||
$this->assertsame($uri->params('ueper'), null);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user