mirror of
https://github.com/laravel/laravel.git
synced 2025-02-20 11:53:14 +08:00
adding routing tests.
This commit is contained in:
parent
f93532d226
commit
d6e21a4186
71
tests/cases/laravel/routing.test.php
Normal file
71
tests/cases/laravel/routing.test.php
Normal file
@ -0,0 +1,71 @@
|
||||
<?php
|
||||
|
||||
use Laravel\Routing\Router;
|
||||
|
||||
class RoutingTest extends PHPUnit_Framework_TestCase {
|
||||
|
||||
/**
|
||||
* Destroy the testing environment.
|
||||
*/
|
||||
public function tearDown()
|
||||
{
|
||||
Router::$names = array();
|
||||
Router::$routes = array();
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the basic routing mechanism.
|
||||
*
|
||||
* @group laravel
|
||||
*/
|
||||
public function testBasicRouteCanBeRouted()
|
||||
{
|
||||
Router::register('GET /', function() {});
|
||||
Router::register('GET /home', function() {});
|
||||
|
||||
$this->assertEquals('GET /', Router::route('GET', '/')->key);
|
||||
$this->assertEquals('GET /home', Router::route('GET', '/home')->key);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test that the router can handle basic wildcards.
|
||||
*
|
||||
* @group laravel
|
||||
*/
|
||||
public function testWildcardRoutesCanBeRouted()
|
||||
{
|
||||
Router::register('GET /user/(:num)', function() {});
|
||||
Router::register('GET /profile/(:any)/(:num)', function() {});
|
||||
|
||||
$this->assertNull(Router::route('GET', 'user/1.5'));
|
||||
$this->assertNull(Router::route('GET', 'user/taylor'));
|
||||
$this->assertEquals('GET /user/(:num)', Router::route('GET', 'user/1')->key);
|
||||
|
||||
$this->assertNull(Router::route('GET', 'profile/1/otwell'));
|
||||
$this->assertNull(Router::route('POST', 'profile/taylor/1'));
|
||||
$this->assertNull(Router::route('GET', 'profile/taylor/otwell'));
|
||||
$this->assertNull(Router::route('GET', 'profile/taylor/1/otwell'));
|
||||
$this->assertEquals('GET /profile/(:any)/(:num)', Router::route('GET', 'profile/taylor/1')->key);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test that optional wildcards can be routed.
|
||||
*
|
||||
* @group laravel
|
||||
*/
|
||||
public function testOptionalWildcardsCanBeRouted()
|
||||
{
|
||||
Router::register('GET /user/(:num?)', function() {});
|
||||
Router::register('GET /profile/(:any)/(:any?)', function() {});
|
||||
|
||||
$this->assertNull(Router::route('GET', 'user/taylor'));
|
||||
$this->assertEquals('GET /user/(:num?)', Router::route('GET', 'user')->key);
|
||||
$this->assertEquals('GET /user/(:num?)', Router::route('GET', 'user/1')->key);
|
||||
|
||||
$this->assertNull(Router::route('GET', 'profile/taylor/otwell/test'));
|
||||
$this->assertEquals('GET /profile/(:any)/(:any?)', Router::route('GET', 'profile/taylor')->key);
|
||||
$this->assertEquals('GET /profile/(:any)/(:any?)', Router::route('GET', 'profile/taylor/25')->key);
|
||||
$this->assertEquals('GET /profile/(:any)/(:any?)', Router::route('GET', 'profile/taylor/otwell')->key);
|
||||
}
|
||||
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user