我想測試登錄功能,如果它工作propperly,只允許合法用戶和活躍用戶在CakePHP的測試登錄
我的用戶固定裝置包括:
array(
'password' => '*emptyPasswordHash*', // empty password
'username' => 'Lorem',
'balance' => 0,
'currency' => 'USD',
'id' => 1,
'user_group_id' => 3, //Customer
'active' => 1,
'hash' => 'LoremHash'
),
我的測試功能如下:
function testLogin() {
//test valid login
$result = $this->testAction('/users/login', array(
'data' => array(
'User' => array(
'username' => 'Lorem',
'pass' => '',
'remember' => true
)),
'method' => 'post',
'return' => 'view'
));
debug($result);
}
登錄表單具有3個輸入:username
,password
和remember
我在UsersController::beforeFilter
設置$this->Auth->autoRedirect = false;
,我做了一些餅乾設置的東西
當我debug($this->data);
在UsersController::login()
它顯示了完全相同的數據測試和normaly登錄時的時候。但是,當測試登錄失敗,我得到$this->Auth->loginError
消息,而不是登錄。
如何正確測試登錄操作?
鏈接不再有效... :( – 2013-02-21 06:24:48
https://github.com/cakephp/cakephp/blob/26d526f6240239094aa714b86093cd36fbb9a1f3/cake/tests/cases/libs/controller/components/auth.test.php#L561 – dogmatic69 2013-03-05 14:09:09