|
1 | 1 | import pytest |
2 | 2 |
|
3 | | -from domain.user.exceptions.password import PasswordRequiresDigitError, PasswordRequiresLowercaseError, PasswordRequiresSpecialCharError, PasswordRequiresUppercaseError, PasswordTooLongError, PasswordTooShortError, WrongPasswordFormatError |
| 3 | +from domain.user.exceptions.password import ( |
| 4 | + PasswordRequiresDigitError, |
| 5 | + PasswordRequiresLowercaseError, |
| 6 | + PasswordRequiresSpecialCharError, |
| 7 | + PasswordRequiresUppercaseError, |
| 8 | + PasswordTooLongError, |
| 9 | + PasswordTooShortError, |
| 10 | +) |
4 | 11 | from domain.user.value_objects.password import Password |
5 | 12 |
|
| 13 | + |
6 | 14 | def test_valid_password(): |
7 | 15 | password = Password("SecureP@ss1") |
8 | 16 | assert password.to_raw() == "SecureP@ss1" |
9 | 17 |
|
| 18 | + |
10 | 19 | def test_password_too_short(): |
11 | 20 | with pytest.raises(PasswordTooShortError): |
12 | 21 | Password("Short1") |
13 | 22 |
|
| 23 | + |
14 | 24 | def test_password_too_long(): |
15 | 25 | with pytest.raises(PasswordTooLongError): |
16 | 26 | Password("a" * 65) |
17 | 27 |
|
| 28 | + |
18 | 29 | def test_password_requires_digit(): |
19 | 30 | with pytest.raises(PasswordRequiresDigitError): |
20 | 31 | Password("NoDigits!") |
21 | 32 |
|
| 33 | + |
22 | 34 | def test_password_requires_uppercase(): |
23 | 35 | with pytest.raises(PasswordRequiresUppercaseError): |
24 | 36 | Password("nouppercase1!") |
25 | 37 |
|
| 38 | + |
26 | 39 | def test_password_requires_lowercase(): |
27 | 40 | with pytest.raises(PasswordRequiresLowercaseError): |
28 | 41 | Password("NOLOWERCASE1!") |
29 | 42 |
|
| 43 | + |
30 | 44 | def test_password_requires_special_char(): |
31 | 45 | with pytest.raises(PasswordRequiresSpecialCharError): |
32 | 46 | Password("NoSpecialChar1") |
33 | | - |
|
0 commit comments