fix(#254): fiexd registration micro bugs (#52)

keep-around/af30b88d367751c9e05a735e4a0467a96238ef47
Mirlan 5 years ago committed by GitHub
parent 455157c361
commit ac57e5c3f8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 5
      src/features/Register/components/RegistrationStep/hooks/useValidateForm.tsx
  2. 2
      src/features/Register/helpers/isValidPassword/__tests__/index.tsx
  3. 3
      src/features/Register/helpers/isValidPassword/index.tsx

@ -46,21 +46,22 @@ export const useValidateForm = () => {
setErrorOnEmptyFields(requiredFields, '') setErrorOnEmptyFields(requiredFields, '')
return false return false
} }
hasError = setErrorOnEmptyFields(simpleValidationFields, 'error_fill_out_this_field')
if (isFieldEmpty(formIds.email)) { if (isFieldEmpty(formIds.email)) {
updateFormError(formIds.email, 'error_empty_email') updateFormError(formIds.email, 'error_empty_email')
hasError = true hasError = true
} else if (!isValidEmail(email)) { } else if (!isValidEmail(email)) {
updateFormError(formIds.email, 'error_invalid_email_format') updateFormError(formIds.email, 'error_invalid_email_format')
hasError = true
} }
if (!isValidPassword(password)) { if (!isValidPassword(password)) {
updateFormError(formIds.password, 'error_simple_password') updateFormError(formIds.password, 'error_simple_password')
hasError = true hasError = true
} }
if (isValidPhone(phone)) { if (!isValidPhone(phone)) {
updateFormError(formIds.phone, 'error_invalid_phone_format') updateFormError(formIds.phone, 'error_invalid_phone_format')
hasError = true hasError = true
} }
hasError = setErrorOnEmptyFields(simpleValidationFields, 'error_fill_out_this_field')
return !hasError return !hasError
} }

@ -1,6 +1,7 @@
import { isValidPassword } from '..' import { isValidPassword } from '..'
it('invalid passwords', () => { it('invalid passwords', () => {
expect(isValidPassword('')).toBeFalsy()
expect(isValidPassword('a')).toBeFalsy() expect(isValidPassword('a')).toBeFalsy()
expect(isValidPassword('1')).toBeFalsy() expect(isValidPassword('1')).toBeFalsy()
expect(isValidPassword('abcdef')).toBeFalsy() expect(isValidPassword('abcdef')).toBeFalsy()
@ -12,4 +13,5 @@ it('invalid passwords', () => {
it('valid passwords', () => { it('valid passwords', () => {
expect(isValidPassword('aASbc!def123$')).toBeTruthy() expect(isValidPassword('aASbc!def123$')).toBeTruthy()
expect(isValidPassword('Abcdef@123$')).toBeTruthy() expect(isValidPassword('Abcdef@123$')).toBeTruthy()
expect(isValidPassword('Abcd1234')).toBeTruthy()
}) })

@ -1,4 +1,4 @@
export const passwordRegex = '^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,500}$' export const passwordRegex = '^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9]).{8,500}$'
const passwordRegExp = new RegExp(passwordRegex) const passwordRegExp = new RegExp(passwordRegex)
@ -6,7 +6,6 @@ const passwordRegExp = new RegExp(passwordRegex)
* At least one upper case English letter, (?=.*?[A-Z]) * At least one upper case English letter, (?=.*?[A-Z])
* At least one lower case English letter, (?=.*?[a-z]) * At least one lower case English letter, (?=.*?[a-z])
* At least one digit, (?=.*?[0-9]) * At least one digit, (?=.*?[0-9])
* At least one special character, (?=.*?[#?!@$%^&*-])
* Minimum eight in length .{8,} (with the anchors) * Minimum eight in length .{8,} (with the anchors)
*/ */
export const isValidPassword = (password: string) => ( export const isValidPassword = (password: string) => (

Loading…
Cancel
Save