username/display_name/video_channel_name min length 1 and max length 50 (#1265)
* make username, display_name and video_channel_name min length 1 and max length 50; (fixes #1263); ! still some bug on the frontend complains but if you remove the disabled property it creates the account just fine; allow for usernames to start with a number; fix test, since username can be 1 char now make test check empty; fix test, Should fail with a too long username; fix test, Should fail with a too small username; fix regular expression for username and videoChannel; change username, videoChannel to be lowercase and fix message; * change 1 characters to 1 character
This commit is contained in:
parent
f3e4d59408
commit
d0ce42c1c1
4 changed files with 27 additions and 27 deletions
|
@ -23,15 +23,15 @@ export class UserValidatorsService {
|
|||
this.USER_USERNAME = {
|
||||
VALIDATORS: [
|
||||
Validators.required,
|
||||
Validators.minLength(3),
|
||||
Validators.maxLength(20),
|
||||
Validators.pattern(/^[a-z0-9._]+$/)
|
||||
Validators.minLength(1),
|
||||
Validators.maxLength(50),
|
||||
Validators.pattern(/^[a-z0-9][a-z0-9-._]*$/)
|
||||
],
|
||||
MESSAGES: {
|
||||
'required': this.i18n('Username is required.'),
|
||||
'minlength': this.i18n('Username must be at least 3 characters long.'),
|
||||
'maxlength': this.i18n('Username cannot be more than 20 characters long.'),
|
||||
'pattern': this.i18n('Username should be only lowercase alphanumeric characters.')
|
||||
'minlength': this.i18n('Username must be at least 1 character long.'),
|
||||
'maxlength': this.i18n('Username cannot be more than 50 characters long.'),
|
||||
'pattern': this.i18n('Username should be lowercase alphanumeric; dots, dashes and underscores are allowed.')
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -88,13 +88,13 @@ export class UserValidatorsService {
|
|||
this.USER_DISPLAY_NAME = {
|
||||
VALIDATORS: [
|
||||
Validators.required,
|
||||
Validators.minLength(3),
|
||||
Validators.maxLength(120)
|
||||
Validators.minLength(1),
|
||||
Validators.maxLength(50)
|
||||
],
|
||||
MESSAGES: {
|
||||
'required': this.i18n('Display name is required.'),
|
||||
'minlength': this.i18n('Display name must be at least 3 characters long.'),
|
||||
'maxlength': this.i18n('Display name cannot be more than 120 characters long.')
|
||||
'minlength': this.i18n('Display name must be at least 1 character long.'),
|
||||
'maxlength': this.i18n('Display name cannot be more than 50 characters long.')
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -14,28 +14,28 @@ export class VideoChannelValidatorsService {
|
|||
this.VIDEO_CHANNEL_NAME = {
|
||||
VALIDATORS: [
|
||||
Validators.required,
|
||||
Validators.minLength(3),
|
||||
Validators.maxLength(20),
|
||||
Validators.pattern(/^[a-z0-9._]+$/)
|
||||
Validators.minLength(1),
|
||||
Validators.maxLength(50),
|
||||
Validators.pattern(/^[a-z0-9][a-z0-9-._]*$/)
|
||||
],
|
||||
MESSAGES: {
|
||||
'required': this.i18n('Name is required.'),
|
||||
'minlength': this.i18n('Name must be at least 3 characters long.'),
|
||||
'maxlength': this.i18n('Name cannot be more than 20 characters long.'),
|
||||
'pattern': this.i18n('Name should be only lowercase alphanumeric characters.')
|
||||
'minlength': this.i18n('Name must be at least 1 character long.'),
|
||||
'maxlength': this.i18n('Name cannot be more than 50 characters long.'),
|
||||
'pattern': this.i18n('Name should be lowercase alphanumeric; dots, dashes and underscores are allowed.')
|
||||
}
|
||||
}
|
||||
|
||||
this.VIDEO_CHANNEL_DISPLAY_NAME = {
|
||||
VALIDATORS: [
|
||||
Validators.required,
|
||||
Validators.minLength(3),
|
||||
Validators.maxLength(120)
|
||||
Validators.minLength(1),
|
||||
Validators.maxLength(50)
|
||||
],
|
||||
MESSAGES: {
|
||||
'required': i18n('Display name is required.'),
|
||||
'minlength': i18n('Display name must be at least 3 characters long.'),
|
||||
'maxlength': i18n('Display name cannot be more than 120 characters long.')
|
||||
'minlength': i18n('Display name must be at least 1 character long.'),
|
||||
'maxlength': i18n('Display name cannot be more than 50 characters long.')
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -300,9 +300,9 @@ const CONFIG = {
|
|||
|
||||
const CONSTRAINTS_FIELDS = {
|
||||
USERS: {
|
||||
NAME: { min: 3, max: 120 }, // Length
|
||||
NAME: { min: 1, max: 50 }, // Length
|
||||
DESCRIPTION: { min: 3, max: 1000 }, // Length
|
||||
USERNAME: { min: 3, max: 20 }, // Length
|
||||
USERNAME: { min: 1, max: 50 }, // Length
|
||||
PASSWORD: { min: 6, max: 255 }, // Length
|
||||
VIDEO_QUOTA: { min: -1 },
|
||||
VIDEO_QUOTA_DAILY: { min: -1 },
|
||||
|
@ -316,7 +316,7 @@ const CONSTRAINTS_FIELDS = {
|
|||
REASON: { min: 2, max: 300 } // Length
|
||||
},
|
||||
VIDEO_CHANNELS: {
|
||||
NAME: { min: 3, max: 120 }, // Length
|
||||
NAME: { min: 1, max: 50 }, // Length
|
||||
DESCRIPTION: { min: 3, max: 1000 }, // Length
|
||||
SUPPORT: { min: 3, max: 1000 }, // Length
|
||||
URL: { min: 3, max: 2000 } // Length
|
||||
|
|
|
@ -99,13 +99,13 @@ describe('Test users API validators', function () {
|
|||
}
|
||||
|
||||
it('Should fail with a too small username', async function () {
|
||||
const fields = immutableAssign(baseCorrectParams, { username: 'fi' })
|
||||
const fields = immutableAssign(baseCorrectParams, { username: '' })
|
||||
|
||||
await makePostBodyRequest({ url: server.url, path, token: server.accessToken, fields })
|
||||
})
|
||||
|
||||
it('Should fail with a too long username', async function () {
|
||||
const fields = immutableAssign(baseCorrectParams, { username: 'my_super_username_which_is_very_long' })
|
||||
const fields = immutableAssign(baseCorrectParams, { username: 'super'.repeat(11) })
|
||||
|
||||
await makePostBodyRequest({ url: server.url, path, token: server.accessToken, fields })
|
||||
})
|
||||
|
@ -550,13 +550,13 @@ describe('Test users API validators', function () {
|
|||
}
|
||||
|
||||
it('Should fail with a too small username', async function () {
|
||||
const fields = immutableAssign(baseCorrectParams, { username: 'ji' })
|
||||
const fields = immutableAssign(baseCorrectParams, { username: '' })
|
||||
|
||||
await makePostBodyRequest({ url: server.url, path: registrationPath, token: server.accessToken, fields })
|
||||
})
|
||||
|
||||
it('Should fail with a too long username', async function () {
|
||||
const fields = immutableAssign(baseCorrectParams, { username: 'my_super_username_which_is_very_long' })
|
||||
const fields = immutableAssign(baseCorrectParams, { username: 'super'.repeat(11) })
|
||||
|
||||
await makePostBodyRequest({ url: server.url, path: registrationPath, token: server.accessToken, fields })
|
||||
})
|
||||
|
|
Loading…
Reference in a new issue