From d22c7415a460f4d5d593efbe15667c21497aef56 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Sun, 31 Jul 2016 13:43:19 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8D=95=E5=85=83=E6=B5=8B=E8=AF=95=E5=AE=8C?= =?UTF-8?q?=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tests/thinkphp/library/think/routeTest.php | 36 +++++++++++++++++++--- 1 file changed, 32 insertions(+), 4 deletions(-) diff --git a/tests/thinkphp/library/think/routeTest.php b/tests/thinkphp/library/think/routeTest.php index c55e4f53..e9c6fa2e 100644 --- a/tests/thinkphp/library/think/routeTest.php +++ b/tests/thinkphp/library/think/routeTest.php @@ -54,6 +54,7 @@ class routeTest extends \PHPUnit_Framework_TestCase '__alias__' => ['blog1' => 'blog1'], '__rest__' => ['res' => ['index/blog']], 'bbb' => ['index/blog1', ['method' => 'POST']], + 'ddd' => '', ['hello1/:ddd', 'index/hello1', ['method' => 'POST']], ]; Route::import($rule); @@ -78,6 +79,7 @@ class routeTest extends \PHPUnit_Framework_TestCase $this->assertEquals(['index', 'comment', 'read'], $result['module']); $result = Route::check($request, 'blog/8/comment/10/edit'); $this->assertEquals(['index', 'comment', 'edit'], $result['module']); + } public function testRest() @@ -174,12 +176,38 @@ class routeTest extends \PHPUnit_Framework_TestCase Route::group(['prefix' => 'prefix/'], function () { Route::rule('hello4/:name', 'hello'); }); + Route::group(['prefix' => 'prefix/'], [ + 'hello4/:name' => 'hello', + ]); $result = Route::check($request, 'hello4/thinkphp'); $this->assertEquals([null, 'prefix', 'hello'], $result['module']); - Route::group('group3', [ - ':name' => 'hello', - ':id' => 'hello', - ], ['prefix' => 'index/']); + Route::group('group5', [ + [':name', 'hello', ['method' => 'GET|POST']], + ':id' => 'hello', + ], ['prefix' => 'prefix/']); + $result = Route::check($request, 'group5/thinkphp'); + $this->assertEquals([null, 'prefix', 'hello'], $result['module']); + } + + public function testControllerRoute() + { + $request = Request::instance(); + Route::controller('controller', 'index/Blog'); + $result = Route::check($request, 'controller/info'); + $this->assertEquals(['index', 'Blog', 'getinfo'], $result['module']); + Route::setMethodPrefix('GET', 'read'); + Route::setMethodPrefix(['get' => 'read']); + Route::controller('controller', 'index/Blog'); + $result = Route::check($request, 'controller/phone'); + $this->assertEquals(['index', 'Blog', 'readphone'], $result['module']); + } + + public function testAliasRoute() + { + $request = Request::instance(); + Route::alias('alias', 'index/Alias'); + $result = Route::check($request, 'alias/info'); + $this->assertEquals('index/Alias/info', $result['module']); } public function testRouteToModule()