Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- namespace tests\behaviors;
- use app\extensions\UrlManager;
- use yii\web\Request;
- use app\extensions\urlrules\AdvancedLenderSearchUrlRule;
- class AdvancedLenderSearchUrlRuleBehaviorTest extends \yii\codeception\TestCase
- {
- public function testUrlForAnotherRoutes()
- {
- foreach ($this->getRoutes() as $route) {
- $manager = new UrlManager();
- $rule = new AdvancedLenderSearchUrlRule([
- 'pattern' => '<type:[\-a-zA-Z0-9]+>/<urlParams:[\-a-zA-Z0-9\/]+>',
- 'route' => 'lenders/index',
- ]);
- $request = new Request();
- $request->setUrl($route['url']);
- $this->assertEquals($route['expected'], (boolean) $rule->parseRequest($manager, $request));
- }
- }
- private function getRoutes()
- {
- return [
- ['url' => '/types/sum-123', 'expected' => true],
- ['url' => '/types/duration-34', 'expected' => true],
- ['url' => '/types/duration-34/sum-123', 'expected' => true],
- ['url' => '/types/sum-34/duration-123', 'expected' => true],
- ['url' => '/types/currency-euro', 'expected' => true],
- ['url' => '/types/sum-34/currency-euro', 'expected' => true],
- ['url' => '/types/currency-euro/sum-34', 'expected' => true],
- ['url' => '/types/sum-34/duration-123/currency-euro', 'expected' => true],
- ['url' => '/blog', 'expected' => false],
- ['url' => '/site-page', 'expected' => false],
- ['url' => '/blog/view/1', 'expected' => false],
- ['url' => '/admin/controller/action', 'expected' => false],
- ];
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement