From ae32c228d1d17c36834306d0842fd4b34195f477 Mon Sep 17 00:00:00 2001 From: Mike Cao Date: Thu, 17 Jan 2013 00:58:31 -0800 Subject: [PATCH] Changed PHPUnit references. Added new tests for router. --- tests/AutoloadTest.php | 2 +- tests/DispatcherTest.php | 2 +- tests/FilterTest.php | 2 +- tests/LoaderTest.php | 2 +- tests/MapTest.php | 2 +- tests/RegisterTest.php | 2 +- tests/RenderTest.php | 4 +-- tests/RouterTest.php | 46 ++++++++++++++++++++-------- tests/VariableTest.php | 2 +- tests/ViewTest.php | 6 ++-- tests/views/{ => layouts}/layout.php | 0 11 files changed, 46 insertions(+), 24 deletions(-) rename tests/views/{ => layouts}/layout.php (100%) diff --git a/tests/AutoloadTest.php b/tests/AutoloadTest.php index b65314d..f73f9f6 100644 --- a/tests/AutoloadTest.php +++ b/tests/AutoloadTest.php @@ -6,7 +6,7 @@ * @license http://www.opensource.org/licenses/mit-license.php */ -require_once 'PHPUnit.php'; +require_once 'PHPUnit/Autoload.php'; require_once __DIR__.'/../flight/Flight.php'; class AutoloadTest extends PHPUnit_Framework_TestCase diff --git a/tests/DispatcherTest.php b/tests/DispatcherTest.php index e183553..a554657 100644 --- a/tests/DispatcherTest.php +++ b/tests/DispatcherTest.php @@ -6,7 +6,7 @@ * @license http://www.opensource.org/licenses/mit-license.php */ -require_once 'PHPUnit.php'; +require_once 'PHPUnit/Autoload.php'; require_once __DIR__.'/../flight/core/Dispatcher.php'; require_once __DIR__.'/classes/Hello.php'; diff --git a/tests/FilterTest.php b/tests/FilterTest.php index 6dbcd7c..df84d28 100644 --- a/tests/FilterTest.php +++ b/tests/FilterTest.php @@ -6,7 +6,7 @@ * @license http://www.opensource.org/licenses/mit-license.php */ -require_once 'PHPUnit.php'; +require_once 'PHPUnit/Autoload.php'; require_once __DIR__.'/../flight/Flight.php'; class FilterTest extends PHPUnit_Framework_TestCase diff --git a/tests/LoaderTest.php b/tests/LoaderTest.php index c3a1667..3e313b6 100644 --- a/tests/LoaderTest.php +++ b/tests/LoaderTest.php @@ -6,7 +6,7 @@ * @license http://www.opensource.org/licenses/mit-license.php */ -require_once 'PHPUnit.php'; +require_once 'PHPUnit/Autoload.php'; require_once __DIR__.'/../flight/core/Loader.php'; class LoaderTest extends PHPUnit_Framework_TestCase diff --git a/tests/MapTest.php b/tests/MapTest.php index 070d358..ce0a574 100644 --- a/tests/MapTest.php +++ b/tests/MapTest.php @@ -6,7 +6,7 @@ * @license http://www.opensource.org/licenses/mit-license.php */ -require_once 'PHPUnit.php'; +require_once 'PHPUnit/Autoload.php'; require_once __DIR__.'/../flight/Flight.php'; require_once __DIR__.'/classes/Hello.php'; diff --git a/tests/RegisterTest.php b/tests/RegisterTest.php index 20acb2f..b1e93b3 100644 --- a/tests/RegisterTest.php +++ b/tests/RegisterTest.php @@ -6,7 +6,7 @@ * @license http://www.opensource.org/licenses/mit-license.php */ -require_once 'PHPUnit.php'; +require_once 'PHPUnit/Autoload.php'; require_once __DIR__.'/../flight/Flight.php'; class RegisterTest extends PHPUnit_Framework_TestCase diff --git a/tests/RenderTest.php b/tests/RenderTest.php index 095bb74..34c0819 100644 --- a/tests/RenderTest.php +++ b/tests/RenderTest.php @@ -6,7 +6,7 @@ * @license http://www.opensource.org/licenses/mit-license.php */ -require_once 'PHPUnit.php'; +require_once 'PHPUnit/Autoload.php'; require_once __DIR__.'/../flight/Flight.php'; class RenderTest extends PHPUnit_Framework_TestCase @@ -26,7 +26,7 @@ class RenderTest extends PHPUnit_Framework_TestCase // Renders a view into a layout function testRenderLayout(){ Flight::render('hello', array('name' => 'Bob'), 'content'); - Flight::render('layout'); + Flight::render('layouts/layout'); $this->expectOutputString('Hello, Bob!'); } diff --git a/tests/RouterTest.php b/tests/RouterTest.php index e696fc2..8c95d6a 100644 --- a/tests/RouterTest.php +++ b/tests/RouterTest.php @@ -6,7 +6,7 @@ * @license http://www.opensource.org/licenses/mit-license.php */ -require_once 'PHPUnit.php'; +require_once 'PHPUnit/Autoload.php'; require_once __DIR__.'/../flight/net/Router.php'; require_once __DIR__.'/../flight/net/Request.php'; @@ -23,11 +23,15 @@ class RouterTest extends PHPUnit_Framework_TestCase private $request; function setUp(){ - Flight::init(); $this->router = new \flight\net\Router(); $this->request = new \flight\net\Request(); } + // Simple output + function ok(){ + echo 'OK'; + } + // Checks if a route was matched function check($str = 'OK'){ $callback = $this->router->route($this->request); @@ -42,7 +46,7 @@ class RouterTest extends PHPUnit_Framework_TestCase // Default route function testDefaultRoute(){ - $this->router->map('/', 'ok'); + $this->router->map('/', array($this, 'ok')); $this->request->url = '/'; $this->check(); @@ -50,7 +54,7 @@ class RouterTest extends PHPUnit_Framework_TestCase // Simple path function testPathRoute() { - $this->router->map('/path', 'ok'); + $this->router->map('/path', array($this, 'ok')); $this->request->url = '/path'; $this->check(); @@ -58,7 +62,7 @@ class RouterTest extends PHPUnit_Framework_TestCase // POST route function testPostRoute(){ - $this->router->map('POST /', 'ok'); + $this->router->map('POST /', array($this, 'ok')); $this->request->url = '/'; $this->request->method = 'POST'; @@ -67,7 +71,7 @@ class RouterTest extends PHPUnit_Framework_TestCase // Either GET or POST route function testGetPostRoute(){ - $this->router->map('GET|POST /', 'ok'); + $this->router->map('GET|POST /', array($this, 'ok')); $this->request->url = '/'; $this->request->method = 'GET'; @@ -76,7 +80,7 @@ class RouterTest extends PHPUnit_Framework_TestCase // Test regular expression matching function testRegEx(){ - $this->router->map('/num/[0-9]+', 'ok'); + $this->router->map('/num/[0-9]+', array($this, 'ok')); $this->request->url = '/num/1234'; $this->check(); @@ -114,15 +118,33 @@ class RouterTest extends PHPUnit_Framework_TestCase $this->check('2000,,'); } + // Regex in optional parameters + function testRegexOptionalParameters(){ + $this->router->map('/@controller/@method(/@id:[0-9]+)', function($controller, $method, $id){ + echo "$controller,$method,$id"; + }); + + $this->request->url = '/user/delete/123'; + + $this->check('user,delete,123'); + } + + // Regex in optional parameters + function testRegexEmptyOptionalParameters(){ + $this->router->map('/@controller/@method(/@id:[0-9]+)', function($controller, $method, $id){ + echo "$controller,$method,$id"; + }); + + $this->request->url = '/user/delete/'; + + $this->check('user,delete,'); + } + // Wildcard matching function testWildcard(){ - $this->router->map('/account/*', 'ok'); + $this->router->map('/account/*', array($this, 'ok')); $this->request->url = '/account/123/abc/xyz'; $this->check(); } } - -function ok(){ - echo 'OK'; -} diff --git a/tests/VariableTest.php b/tests/VariableTest.php index d5b9d83..d20f0f2 100644 --- a/tests/VariableTest.php +++ b/tests/VariableTest.php @@ -6,7 +6,7 @@ * @license http://www.opensource.org/licenses/mit-license.php */ -require_once 'PHPUnit.php'; +require_once 'PHPUnit/Autoload.php'; require_once __DIR__.'/../flight/Flight.php'; class VariableTest extends PHPUnit_Framework_TestCase diff --git a/tests/ViewTest.php b/tests/ViewTest.php index 23f57c7..1bf3f60 100644 --- a/tests/ViewTest.php +++ b/tests/ViewTest.php @@ -6,7 +6,7 @@ * @license http://www.opensource.org/licenses/mit-license.php */ -require_once 'PHPUnit.php'; +require_once 'PHPUnit/Autoload.php'; require_once __DIR__.'/../flight/template/View.php'; class ViewTest extends PHPUnit_Framework_TestCase @@ -30,9 +30,9 @@ class ViewTest extends PHPUnit_Framework_TestCase $this->assertTrue($this->view->has('test')); $this->assertTrue(!$this->view->has('unknown')); - $this->view->clear('tests'); + $this->view->clear('test'); - $this->assertEquals(null, $this->view->get('tess')); + $this->assertEquals(null, $this->view->get('test')); } // Check if template files exist diff --git a/tests/views/layout.php b/tests/views/layouts/layout.php similarity index 100% rename from tests/views/layout.php rename to tests/views/layouts/layout.php