-
Notifications
You must be signed in to change notification settings - Fork 149
Expand file tree
/
Copy pathvalidateRegisterForm.test.js
More file actions
112 lines (83 loc) · 3.55 KB
/
validateRegisterForm.test.js
File metadata and controls
112 lines (83 loc) · 3.55 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
"use strict";
describe(`Function 'validateRegisterForm':`, () => {
const validateRegisterForm = require("./validateRegisterForm");
it(`should be declared`, () => {
expect(validateRegisterForm).toBeInstanceOf(Function);
});
it(`should return object`, () => {
expect(typeof validateRegisterForm("test@mail.com", "P@ssword1!")).toBe(
"object"
);
});
it(`success message for the valid input`, () => {
const isValid = validateRegisterForm("test@mail.com", "P@ssword1!");
expect(isValid.code).toBe(200);
expect(isValid.message).toBe("Email and password are valid.");
});
it(`email error for email with no english letters`, () => {
const isValid = validateRegisterForm("test@maєil.com", "P@ssword1!");
expect(isValid.code).toBe(422);
expect(isValid.message).toBe("Email is invalid.");
});
it(`success message for email with digits and characters`, () => {
const isValid = validateRegisterForm(
"Tf4st@m5hgil.co!^&%$5m.cj",
"P@ssword1!"
);
expect(isValid.code).toBe(200);
expect(isValid.message).toBe("Email and password are valid.");
});
it(`email error for email without @`, () => {
const isValid = validateRegisterForm("testmail.com", "P@ssword1!");
expect(isValid.code).toBe(422);
expect(isValid.message).toBe("Email is invalid.");
});
it(`email error for email with . at start`, () => {
const isValid = validateRegisterForm(".test@mail.com", "P@ssword1!");
expect(isValid.code).toBe(422);
expect(isValid.message).toBe("Email is invalid.");
});
it(`email error for email with double dots`, () => {
const isValid = validateRegisterForm("te..st@mail.com", "P@ssword1!");
expect(isValid.code).toBe(422);
expect(isValid.message).toBe("Email is invalid.");
});
it(`password error for valid email and password without number`, () => {
const invalidPassword = validateRegisterForm("test@mail.com", "P@ssword");
expect(invalidPassword.code).toBe(422);
expect(invalidPassword.message).toBe("Password is invalid.");
});
it(`password error for valid email and password without character`, () => {
const invalidPassword = validateRegisterForm("test@mail.com", "Password1");
expect(invalidPassword.code).toBe(422);
expect(invalidPassword.message).toBe("Password is invalid.");
});
it(`password error for valid email and password without uppercase letter.`, () => {
const invalidPassword = validateRegisterForm("test@mail.com", "p@assword1");
expect(invalidPassword.code).toBe(422);
expect(invalidPassword.message).toBe("Password is invalid.");
});
it(`invalid password.length > 16`, () => {
const invalidPassword = validateRegisterForm(
"test@mail.com",
"P@sswordhjkkh2###"
);
expect(invalidPassword.code).toBe(422);
expect(invalidPassword.message).toBe("Password is invalid.");
});
it(`invalid password.length < 8`, () => {
const invalidPassword = validateRegisterForm("test@mail.com", "P@s2###");
expect(invalidPassword.code).toBe(422);
expect(invalidPassword.message).toBe("Password is invalid.");
});
it(`email error for email without dot in domain`, () => {
const isValid = validateRegisterForm("test@mailcom", "P@ssword1!");
expect(isValid.code).toBe(422);
expect(isValid.message).toBe("Email is invalid.");
});
it(`error message if password and email are invalid`, () => {
const isValid = validateRegisterForm("test@mailcom", "p@ssword1!");
expect(isValid.code).toBe(500);
expect(isValid.message).toBe("Password and email are invalid.");
});
});