@@ -15,66 +15,45 @@ To be valid, a password must:
1515You must breakdown this problem in order to solve it. Find one test case first and get that working
1616*/
1717const isValidPassword = require ( "./password-validator" ) ;
18+ const previousPasswords = [ "Mmd1!" , "XyZ2$" , "Tes5%" ] ;
19+
1820
1921test ( "password has at least 5 characters" , ( ) => {
20- // Arrange
21- const password = "12345" ;
22- // Act
23- const result = isValidPassword ( password ) ;
24- // Assert
25- expect ( result ) . toEqual ( true ) ;
26- }
27- ) ;
22+ const password = "Ki55$" ;
23+ const result = isValidPassword ( password , previousPasswords ) ; // pass the array
24+ expect ( result ) . toEqual ( true ) ;
25+ } ) ;
2826
29- //
30- test ( "password has at least one English uppercase letter (A-Z)" , ( ) => {
31- // Arrange
32- const password = "A2345" ;
33- // Act
34- const result = isValidPassword ( password ) ;
35- // Assert
36- expect ( result ) . toEqual ( true ) ;
37- }
38- ) ;
27+ test ( "password has at least one uppercase" , ( ) => {
28+ const password = "Uo85*" ;
29+ const result = isValidPassword ( password , previousPasswords ) ;
30+ expect ( result ) . toEqual ( true ) ; npx
31+ } ) ;
3932
40- //
41- test ( "password has least one English lowercase letter (a-z)" , ( ) => {
42- // Arrange
43- const password = "Da2345" ;
44- // Act
45- const result = isValidPassword ( password ) ;
46- // Assert
47- expect ( result ) . toEqual ( true ) ;
48- }
49- ) ;
33+ test ( "password has at least one lowercase" , ( ) => {
34+ const password = "Qf#45" ;
35+ const result = isValidPassword ( password , previousPasswords ) ;
36+ expect ( result ) . toEqual ( true ) ;
37+ } ) ;
5038
51- //
52- test ( "password has at least one number 0-9)" , ( ) => {
53- // Arrange
54- const password = "Cz!345" ;
55- // Act
56- const result = isValidPassword ( password ) ;
57- // Assert
58- expect ( result ) . toEqual ( true ) ;
59- }
60- ) ;
39+ test ( "password has at least one number" , ( ) => {
40+ const password = "Cz!35" ;
41+ const result = isValidPassword ( password , previousPasswords ) ;
42+ expect ( result ) . toEqual ( true ) ;
43+ } ) ;
6144
62- test ( "password has at least one non-alphanumeric symbols: !, #, $, %, ., *, &)" , ( ) => {
63- // Arrange
64- const password = "Cz!345" ;
65- // Act
66- const result = isValidPassword ( password ) ;
67- // Assert
68- expect ( result ) . toEqual ( true ) ;
69- }
70- ) ;
45+ test ( "password has at least one special symbol" , ( ) => {
46+ const password = "Re*19" ;
47+ const result = isValidPassword ( password , previousPasswords ) ;
48+ expect ( result ) . toEqual ( true ) ;
49+ } ) ;
7150
72- //
7351test ( "password must not be a previous password" , ( ) => {
74- const previousPasswords = [ "Mmd1!" , "XyZ2$" , "Test10%" ] ;
75- const password = "Mmd1" ;
52+ const password = "Mmd1!" ;
7653 const result = isValidPassword ( password , previousPasswords ) ;
7754 expect ( result ) . toEqual ( false ) ;
55+
7856} ) ;
7957
80- // Password-validator implemented and tested.
58+
59+ // Password-validator implemented and tested.
0 commit comments