/** * URL用aliasをキーとしてインスタンスを返す * * @param string $alias URL用エイリアス * @param string $expect 期待値 * @return void * @dataProvider findByAliasDataProvider */ public function testFindByAlias($alias, $expect) { $result = $this->agent->findByAlias($alias); if (!is_null($result)) { $this->assertEquals($expect, $result->name, '設定を正しく読み込めません'); } else { $this->assertNull($result, '存在しないエイリアス名で設定が読み込まれています'); } }
/** * 固定ページ表示用のURLかどうかを判定 * [注]ルーターによるURLパース後のみ * * @param CakeRequest $request リクエスト * @return bool */ public function isPage(CakeRequest $request) { $params = explode('/', $request->url); $agent = BcAgent::findByAlias($params[0]); if (is_null($agent)) { $action = 'display'; } else { $action = "{$agent->prefix}_display"; } return $request->params['controller'] === 'pages' && $request->params['action'] === $action; }