コントローラおよび MVC アプリケーションのテスト
起動用の設定を済ませたら、テストの開始です。
テストの方法は PHPUnit テストスイートによるものとほぼ同じですが、
ちょっとした違いがいくつかあります。
まず、テストケースの dispatch()
メソッドを用いてテストの URL をディスパッチしなければなりません。
dispatch('/');
// ...
}
}
]]>
しかし、時にはこれ以外の情報 (GET 変数や POST 変数、
COOKIE 情報など) が必要になることもあります。
これらの情報をリクエストに含めることもできます。
request->setQuery(array(
'foo' => 'bar',
'bar' => 'baz',
));
// POST 変数を設定します
$this->request->setPost(array(
'baz' => 'bat',
'lame' => 'bogus',
));
// クッキーの値を指定します
$this->request->setCookie('user', 'matthew');
// あるいは複数の値を指定します
$this->request->setCookies(array(
'timestamp' => time(),
'host' => 'foobar',
));
// ヘッダを設定することもできます
$this->request->setHeader('X-Requested-With', 'XmlHttpRequest');
// リクエストメソッドを設定します
$this->request->setMethod('POST');
// ディスパッチします
$this->dispatch('/foo/bar');
// ...
}
}
]]>
リクエストが準備できたので、次はアサーションを作成してみましょう。