[AntonyAntonio] - Add remember me test [skip ci]

This commit is contained in:
Ivan Diaz 2016-07-15 22:16:22 -03:00
parent 466bb85d34
commit 342aab48b7
4 changed files with 48 additions and 18 deletions

View File

@ -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;
}
}
}

View File

@ -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();
}
}
}

View File

@ -9,4 +9,5 @@ require './scripts.rb'
# TESTS
require './user/signup.rb'
require './ticket/create.rb'
require './user/login.rb'
#require './ticket/create.rb'

View File

@ -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