<?php /** * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * * This file is part of the Core Framework package. * * (c) Shalom Sam <*****@*****.**> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ use Core\Facades\Router; Router::group(['middleware' => '\\Core\\Middlewares\\csrfProtectionMiddleware'], function () { Router::get('/', 'siteController@indexAction', ['data' => ['pageName' => 'demo', 'title' => 'Demo Home Page', 'metas' => ['keywords' => 'test, keywords, for test', 'description' => 'This is a test description', 'author' => 'Shalom Sam']]]); Router::get('/about', 'siteController@aboutAction', ['data' => ['pageName' => 'demo', 'title' => 'Demo About Page']]); Router::post('/user/register', 'siteController@registerAction'); Router::post('/user/login', 'siteController@loginAction'); Router::get('/user/logout', 'siteController@logoutAction'); });
/** * @covers \Core\Application\BaseApplication::run * @covers \Core\Application\BaseApplication::setRequest * @covers \Core\Request\Request::create * @covers \Core\Facade\Router::get */ public function testIfControllersCanReturnView() { MockPaths::createMockPaths(); $app = new Application(MockPaths::$basePath); Router::get('/user/{name}', '\\Core\\Tests\\Stubs\\Controllers\\StubController@testReturnView'); $app->setRequest(Request::create('http://example.com/user/sam')); $app->run(); $this->assertTrue(headers_sent()); $this->expectOutputString("Hello sam"); }
public function setRoutes() { Router::get('/basic/func', function () { return 'func'; }); Router::get('/basic/{id:num}', function ($payload) { return $payload['id']; }); Router::post('/post/{id:num}', function ($payload) { return $payload['id']; }); Router::put('/put/{id:num}', function ($payload) { return $payload['id']; }); Router::delete('/delete/{id:num}', function ($payload) { return $payload['id']; }); Router::get('http://somedomain.com/somePath', function () { return 'somedomain'; }); Router::get('/test/{id:default=1}', 'testController@testId'); Router::get('/test/{fname}/{id:num:default=1}', 'testController@testName'); //grouping Router::group(['prefix' => '/group'], function () { Router::get('/groupTest/{id:default=1}', 'testController@testId'); }); }