[AntonyAntonio] - Add remember me test [skip ci]
This commit is contained in:
parent
466bb85d34
commit
342aab48b7
|
@ -6,7 +6,7 @@ class LoginController extends Controller {
|
|||
private $userInstance;
|
||||
private $session;
|
||||
private $rememberToken;
|
||||
|
||||
|
||||
public function validations() {
|
||||
return [
|
||||
'permission' => 'any',
|
||||
|
@ -39,11 +39,16 @@ class LoginController extends Controller {
|
|||
}
|
||||
|
||||
private function isTokenValid() {
|
||||
$sessionCookie = SessionCookie::getDataStore(Controller::request('rememberToken'),'token');
|
||||
$userid = Controller::request('userId');
|
||||
if ($sessionCookie !== null && $userid === $sessionCookie->user->id) {
|
||||
$this->userInstance = $sessionCookie->user;
|
||||
return true;
|
||||
$rememberToken = Controller::request('rememberToken');
|
||||
|
||||
if ($rememberToken) {
|
||||
$sessionCookie = SessionCookie::getDataStore($rememberToken, 'token');
|
||||
$userid = Controller::request('userId');
|
||||
|
||||
if ($sessionCookie !== null && $userid === $sessionCookie->user->id) {
|
||||
$this->userInstance = $sessionCookie->user;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<?php
|
||||
|
||||
class SessionCookie extends DataStore {
|
||||
const TABLE = 'session';
|
||||
const TABLE = 'sessioncookie';
|
||||
|
||||
public static function getProps() {
|
||||
return array (
|
||||
|
@ -12,7 +12,8 @@ class SessionCookie extends DataStore {
|
|||
'expirationDate'
|
||||
);
|
||||
}
|
||||
|
||||
protected function getDefaultProps() {
|
||||
return array();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -9,4 +9,5 @@ require './scripts.rb'
|
|||
|
||||
# TESTS
|
||||
require './user/signup.rb'
|
||||
require './ticket/create.rb'
|
||||
require './user/login.rb'
|
||||
#require './ticket/create.rb'
|
||||
|
|
|
@ -1,25 +1,48 @@
|
|||
describe '/user/login' do
|
||||
before do
|
||||
@loginEmail = 'login@os4.com'
|
||||
@loginPass = 'loginpass'
|
||||
@loginEmail = 'login@os4.com'
|
||||
@loginPass = 'loginpass'
|
||||
|
||||
Scripts.createUser(@loginEmail, @loginPass)
|
||||
end
|
||||
Scripts.createUser(@loginEmail, @loginPass)
|
||||
|
||||
it 'should fail if password is incorrect' do
|
||||
result = request('/user/login', {
|
||||
email: @loginEmail,
|
||||
pass: 'some_incorrect_password'
|
||||
password: 'some_incorrect_password'
|
||||
})
|
||||
|
||||
(result['status']).should.equal('fail')
|
||||
end
|
||||
|
||||
it 'should login correctly' do
|
||||
# it 'should login correctly' do
|
||||
|
||||
# end
|
||||
|
||||
# it 'should fail if already logged in' do
|
||||
|
||||
# end
|
||||
|
||||
it 'should return remember token' do
|
||||
request('/user/logout', {})
|
||||
result = request('/user/login', {
|
||||
email: @loginEmail,
|
||||
password: @loginPass,
|
||||
remember: true
|
||||
})
|
||||
|
||||
(result['status']).should.equal('success')
|
||||
|
||||
@rememberToken = result['data']['rememberToken']# falta comproversion
|
||||
@userid = result['data']['userId']
|
||||
end
|
||||
|
||||
it 'should fail if already logged in' do
|
||||
it 'should login with token' do
|
||||
request('/user/logout', {})
|
||||
result = request('/user/login', {
|
||||
rememberToken: @rememberToken,
|
||||
userId: @userid
|
||||
})
|
||||
|
||||
(result['status']).should.equal('success')
|
||||
(result['data']['userId']).should.equal(@userid)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue