-
Notifications
You must be signed in to change notification settings - Fork 149
Expand file tree
/
Copy pathvalidateRegisterForm.test.js
More file actions
136 lines (101 loc) · 4.3 KB
/
validateRegisterForm.test.js
File metadata and controls
136 lines (101 loc) · 4.3 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
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
"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.");
});
it(`email error with dot at the start of top-level domain`, () => {
const isValid = validateRegisterForm("test@.mail.com", "P@ssword1!");
expect(isValid.code).toBe(422);
expect(isValid.message).toBe("Email is invalid.");
});
it(`success with an email that ends with a dot `, () => {
const isValid = validateRegisterForm("test@mail.com.", "P@ssword1!");
expect(isValid.code).toBe(200);
expect(isValid.message).toBe("Email and password are valid.");
});
it(`password with Cyrillic letters`, () => {
const invalidPassword = validateRegisterForm(
"test@mail.com",
"YЖ@sswыэъфйяord1"
);
expect(invalidPassword.code).toBe(200);
expect(invalidPassword.message).toBe("Email and password are valid.");
});
});