1313from django .contrib .auth import get_user_model
1414from django .contrib .auth .models import AnonymousUser
1515from django .test import TestCase
16- from django .urls import reverse
1716
1817TEST_PASSWORD = "secret"
1918
2019User = get_user_model ()
2120
22- login_url = reverse ("login" )
23- logout_url = reverse ("logout" )
24- profile_url = reverse ("account_profile" )
2521api_package_url = "/api/packages/"
2622login_redirect_url = settings .LOGIN_REDIRECT_URL
2723
@@ -31,45 +27,6 @@ def setUp(self):
3127 self .anonymous_user = AnonymousUser ()
3228 self .basic_user = User .objects .create_user (username = "basic_user" , password = TEST_PASSWORD )
3329
34- def test_vulnerablecode_auth_login_view (self ):
35- data = {"username" : self .basic_user .username , "password" : "" }
36- response = self .client .post (login_url , data )
37- form = response .context_data ["form" ]
38- expected_error = {"password" : ["This field is required." ]}
39- self .assertEqual (expected_error , form .errors )
40-
41- data = {"username" : self .basic_user .username , "password" : "wrong" }
42- response = self .client .post (login_url , data )
43- form = response .context_data ["form" ]
44- expected_error = {
45- "__all__" : [
46- "Please enter a correct username and password. "
47- "Note that both fields may be case-sensitive."
48- ]
49- }
50- self .assertEqual (expected_error , form .errors )
51-
52- data = {"username" : self .basic_user .username , "password" : TEST_PASSWORD }
53- response = self .client .post (login_url , data , follow = True )
54- self .assertRedirects (response , login_redirect_url )
55- expected = '<a class="navbar-link">basic_user</a>'
56- self .assertContains (response , expected , html = True )
57-
58- def test_vulnerablecode_auth_logout_view (self ):
59- response = self .client .get (logout_url )
60- self .assertRedirects (response , login_url )
61-
62- self .client .login (username = self .basic_user .username , password = TEST_PASSWORD )
63- response = self .client .get (logout_url )
64- self .assertRedirects (response , login_url )
65-
66- def test_vulnerablecode_account_profile_view (self ):
67- self .client .login (username = self .basic_user .username , password = TEST_PASSWORD )
68- response = self .client .get (profile_url )
69- expected = '<label class="label">API Key</label>'
70- self .assertContains (response , expected , html = True )
71- self .assertContains (response , self .basic_user .auth_token .key )
72-
7330 def test_vulnerablecode_auth_api_required_authentication (self ):
7431 response = self .client .get (api_package_url )
7532 expected = {"detail" : "Authentication credentials were not provided." }
0 commit comments