mirror of
https://github.com/opensupports/opensupports.git
synced 2025-07-28 16:24:42 +02:00
Merge branch 'master' into Recover-Password
Conflicts: server/models/ERRORS.php
This commit is contained in:
commit
1f39e4d845
@ -1,5 +1,7 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
use Respect\Validation\Validator as DataValidator;
|
||||||
|
|
||||||
class SignUpController extends Controller {
|
class SignUpController extends Controller {
|
||||||
const PATH = '/signup';
|
const PATH = '/signup';
|
||||||
|
|
||||||
@ -9,7 +11,20 @@ class SignUpController extends Controller {
|
|||||||
public function validations() {
|
public function validations() {
|
||||||
return [
|
return [
|
||||||
'permission' => 'any',
|
'permission' => 'any',
|
||||||
'requestData' => []
|
'requestData' => [
|
||||||
|
'name' => [
|
||||||
|
'validation' => DataValidator::length(2, 55)->alpha(),
|
||||||
|
'error' => ERRORS::INVALID_NAME
|
||||||
|
],
|
||||||
|
'email' => [
|
||||||
|
'validation' => DataValidator::email(),
|
||||||
|
'error' => ERRORS::INVALID_EMAIL
|
||||||
|
],
|
||||||
|
'password' => [
|
||||||
|
'validation' => DataValidator::length(5, 200),
|
||||||
|
'error' => ERRORS::INVALID_PASSWORD
|
||||||
|
]
|
||||||
|
]
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3,8 +3,6 @@ class ERRORS {
|
|||||||
const INVALID_CREDENTIALS = 'User or password is not defined';
|
const INVALID_CREDENTIALS = 'User or password is not defined';
|
||||||
const SESSION_EXISTS = 'User is already logged in';
|
const SESSION_EXISTS = 'User is already logged in';
|
||||||
const NO_PERMISSION = 'You have no permission to access';
|
const NO_PERMISSION = 'You have no permission to access';
|
||||||
const INVALID_EMAIL = 'Invalid email';
|
|
||||||
const INVALID_TITLE = 'Invalid title';
|
const INVALID_TITLE = 'Invalid title';
|
||||||
const INVALID_CONTENT = 'Invalid content';
|
const INVALID_CONTENT = 'Invalid content';
|
||||||
const INVALID_PASSWORD = 'Invalid password';
|
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
class Scripts
|
class Scripts
|
||||||
def self.createUser(email = 'steve@jobs.com', password = 'custompassword')
|
def self.createUser(email = 'steve@jobs.com', password = 'custompassword', name = 'steve jobs')
|
||||||
response = request('/user/signup', {
|
response = request('/user/signup', {
|
||||||
|
'name' => name,
|
||||||
'email' => email,
|
'email' => email,
|
||||||
'password' => password
|
'password' => password
|
||||||
})
|
})
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
describe '/user/signup' do
|
describe '/user/signup' do
|
||||||
it 'should create user in database' do
|
it 'should create user in database' do
|
||||||
response = request('/user/signup', {
|
response = request('/user/signup', {
|
||||||
|
'name' => 'Steve Jobs',
|
||||||
'email' => 'steve@jobs.com',
|
'email' => 'steve@jobs.com',
|
||||||
'password' => 'custom'
|
'password' => 'custom'
|
||||||
})
|
})
|
||||||
@ -9,4 +10,80 @@ describe '/user/signup' do
|
|||||||
|
|
||||||
(userRow['email']).should.equal('steve@jobs.com')
|
(userRow['email']).should.equal('steve@jobs.com')
|
||||||
end
|
end
|
||||||
|
|
||||||
|
it 'should fail if name is invalid' do
|
||||||
|
long_text = ''
|
||||||
|
100.times {long_text << 'a'}
|
||||||
|
|
||||||
|
result = request('/user/signup', {
|
||||||
|
name: 't',
|
||||||
|
email: 'tyrion@outlook.com',
|
||||||
|
password: 'Lannister'
|
||||||
|
})
|
||||||
|
|
||||||
|
(result['status']).should.equal('fail')
|
||||||
|
(result['message']).should.equal('Invalid name')
|
||||||
|
|
||||||
|
result = request('/user/signup', {
|
||||||
|
name: long_text,
|
||||||
|
email: 'tyrion@outlook.com',
|
||||||
|
password: 'Lannister'
|
||||||
|
})
|
||||||
|
|
||||||
|
(result['status']).should.equal('fail')
|
||||||
|
(result['message']).should.equal('Invalid name')
|
||||||
|
|
||||||
|
result = request('/user/signup', {
|
||||||
|
name: 'tyri0n',
|
||||||
|
email: 'tyrion@outlook.com',
|
||||||
|
password: 'Lannister'
|
||||||
|
})
|
||||||
|
|
||||||
|
(result['status']).should.equal('fail')
|
||||||
|
(result['message']).should.equal('Invalid name')
|
||||||
|
end
|
||||||
|
|
||||||
|
it 'should fail if email is invalid' do
|
||||||
|
result = request('/user/signup', {
|
||||||
|
name: 'tyrion',
|
||||||
|
email: 'tyrionoutlook.com',
|
||||||
|
password: 'Lannister'
|
||||||
|
})
|
||||||
|
|
||||||
|
(result['status']).should.equal('fail')
|
||||||
|
(result['message']).should.equal('Invalid email')
|
||||||
|
|
||||||
|
result = request('/user/signup', {
|
||||||
|
name: 'tyrion',
|
||||||
|
email: 'tyrion@outlookcom',
|
||||||
|
password: 'Lannister'
|
||||||
|
})
|
||||||
|
|
||||||
|
(result['status']).should.equal('fail')
|
||||||
|
(result['message']).should.equal('Invalid email')
|
||||||
|
end
|
||||||
|
|
||||||
|
it 'should fail if password is invalid' do
|
||||||
|
result = request('/user/signup', {
|
||||||
|
name: 'tyrion',
|
||||||
|
email: 'tyrion@outlook.com',
|
||||||
|
password: 'Lann'
|
||||||
|
})
|
||||||
|
|
||||||
|
(result['status']).should.equal('fail')
|
||||||
|
(result['message']).should.equal('Invalid password')
|
||||||
|
|
||||||
|
long_text = ''
|
||||||
|
250.times {long_text << 'a'}
|
||||||
|
|
||||||
|
result = request('/user/signup', {
|
||||||
|
name: 'tyrion',
|
||||||
|
email: 'tyrion@outlook.com',
|
||||||
|
password: long_text
|
||||||
|
})
|
||||||
|
|
||||||
|
(result['status']).should.equal('fail')
|
||||||
|
(result['message']).should.equal('Invalid password')
|
||||||
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
Loading…
x
Reference in New Issue
Block a user