@@ -844,6 +844,11 @@ def setUp(self):
844
844
uid = '3435' ,
845
845
added_by = self .staff_user ,
846
846
)
847
+ BlacklistedUser .objects .create (
848
+ username = 'New bad user' ,
849
+ uid = '9888' ,
850
+ added_by = self .user ,
851
+ )
847
852
self .url = reverse ('supervise:blacklist-list-create' )
848
853
849
854
def test_list_view_unauthenticated (self ):
@@ -853,7 +858,8 @@ def test_list_view_unauthenticated(self):
853
858
def test_list_view_normal_user (self ):
854
859
self .client .login (username = self .user .username , password = 'password' )
855
860
response = self .client .get (self .url )
856
- self .assertEqual (response .status_code , 403 )
861
+ self .assertEqual (response .status_code , 200 )
862
+ self .assertEqual (len (response .data .get ('results' )), 1 )
857
863
858
864
def test_list_view_staff_user (self ):
859
865
self .client .login (username = self .staff_user .username , password = 'password' )
@@ -896,8 +902,8 @@ def test_create_view_unauthenticated(self):
896
902
def test_create_view_normal_user (self ):
897
903
self .client .login (username = self .user .username , password = 'password' )
898
904
response = self .client .post (self .url , self .data )
899
- self .assertEqual (response .status_code , 403 )
900
- self .assertEqual (BlacklistedUser .objects .count (), 0 )
905
+ self .assertEqual (response .status_code , 201 )
906
+ self .assertEqual (BlacklistedUser .objects .count (), 1 )
901
907
902
908
def test_create_view_staff_user (self ):
903
909
self .client .login (username = self .staff_user .username , password = 'password' )
@@ -935,6 +941,11 @@ def setUp(self):
935
941
uid = '3434' ,
936
942
added_by = self .staff_user ,
937
943
)
944
+ self .blacklisted_2 = BlacklistedUser .objects .create (
945
+ username = 'Bad User' ,
946
+ uid = '3434' ,
947
+ added_by = self .user ,
948
+ )
938
949
self .url = reverse (
939
950
'supervise:blacklist-detail' , args = [self .blacklisted .uid ]
940
951
)
@@ -946,7 +957,23 @@ def test_unauthenticated_get(self):
946
957
def test_normal_user_get (self ):
947
958
self .client .login (username = self .user .username , password = 'password' )
948
959
response = self .client .get (self .url )
949
- self .assertEqual (response .status_code , 403 )
960
+ self .assertEqual (response .status_code , 200 )
961
+ self .assertEqual (response .data .get ('username' ), 'Bad User' )
962
+ self .assertEqual (response .data .get ('added_by' ), 'test_user' )
963
+ self .assertIsNotNone (response .data .get ('uid' ))
964
+ self .assertIn ('date' , response .data .keys ())
965
+
966
+ def test_normal_user_getting_staff_user_blacklist (self ):
967
+ blacklisted = BlacklistedUser .objects .create (
968
+ username = 'Bad User' ,
969
+ uid = '4999' ,
970
+ added_by = self .staff_user ,
971
+ )
972
+ self .client .login (username = self .user .username , password = 'password' )
973
+ response = self .client .get (
974
+ reverse ('supervise:blacklist-detail' , args = [4999 ])
975
+ )
976
+ self .assertEqual (response .status_code , 404 )
950
977
951
978
def test_staff_user_get (self ):
952
979
self .client .login (username = self .staff_user .username , password = 'password' )
@@ -960,19 +987,19 @@ def test_staff_user_get(self):
960
987
def test_unauthenticated_delete (self ):
961
988
response = self .client .delete (self .url )
962
989
self .assertEqual (response .status_code , 401 )
963
- self .assertEqual (BlacklistedUser .objects .count (), 1 )
990
+ self .assertEqual (BlacklistedUser .objects .count (), 2 )
964
991
965
992
def test_normal_user_delete (self ):
966
993
self .client .login (username = self .user .username , password = 'password' )
967
994
response = self .client .delete (self .url )
968
- self .assertEqual (response .status_code , 403 )
995
+ self .assertEqual (response .status_code , 204 )
969
996
self .assertEqual (BlacklistedUser .objects .count (), 1 )
970
997
971
998
def test_staff_user_delete (self ):
972
999
self .client .login (username = self .staff_user .username , password = 'password' )
973
1000
response = self .client .delete (self .url )
974
1001
self .assertEqual (response .status_code , 204 )
975
- self .assertEqual (BlacklistedUser .objects .count (), 0 )
1002
+ self .assertEqual (BlacklistedUser .objects .count (), 1 )
976
1003
977
1004
def test_unauthenticated_patch (self ):
978
1005
response = self .client .patch (self .url , {'username' : 'other_user' })
@@ -982,8 +1009,9 @@ def test_unauthenticated_patch(self):
982
1009
def test_normal_user_patch (self ):
983
1010
self .client .login (username = self .user .username , password = 'password' )
984
1011
response = self .client .patch (self .url , {'username' : 'other_user' })
985
- self .assertEqual (response .status_code , 403 )
986
- self .assertEqual (self .blacklisted .username , 'Bad User' )
1012
+ self .assertEqual (response .status_code , 200 )
1013
+ self .blacklisted_2 .refresh_from_db ()
1014
+ self .assertEqual (self .blacklisted_2 .username , 'other_user' )
987
1015
988
1016
def test_staff_user_patch (self ):
989
1017
self .client .login (username = self .staff_user .username , password = 'password' )
0 commit comments