Commit c482ce4707c93b3426d778d2769aad9d937b4a3d

Authored by Rodrigo Siqueira de Melo
Committed by Sergio Oliveira
1 parent a7a92bb6

Tested update fields

Signed-off-by: Carolina Ramalho <carol15022@hotmail.com>
Signed-off-by: Matheus Fernandes <matheus.fernandes@gmail.com>
Showing 1 changed file with 86 additions and 27 deletions   Show diff stats
colab/accounts/tests/test_user.py
@@ -32,10 +32,27 @@ class UserTest(TestCase): @@ -32,10 +32,27 @@ class UserTest(TestCase):
32 def authenticate_user(self): 32 def authenticate_user(self):
33 self.user.needs_update = False 33 self.user.needs_update = False
34 self.user.save() 34 self.user.save()
35 -  
36 self.client.login(username=self.user.username, 35 self.client.login(username=self.user.username,
37 password='123colab4') 36 password='123colab4')
38 37
  38 + def validate_mandatory_fields(self, expected_first_name, expected_last_name,
  39 + first_name, last_name):
  40 +
  41 + data = {'first_name': first_name,
  42 + 'last_name': last_name}
  43 + self.client.post('/account/usertestcolab/edit', data)
  44 + user = User.objects.get(id=1)
  45 + self.assertEqual(expected_first_name, user.first_name)
  46 + self.assertEqual(expected_last_name, user.last_name)
  47 +
  48 + def validate_non_mandatory_fields(self, field_name, expected_value, value):
  49 + data = {'first_name': 'usertestcolab',
  50 + 'last_name': 'colab',
  51 + field_name: value}
  52 + self.client.post('/account/usertestcolab/edit', data)
  53 + user = User.objects.get(id=1)
  54 + self.assertEqual(expected_value, getattr(user, field_name))
  55 +
39 def test_check_password(self): 56 def test_check_password(self):
40 self.assertTrue(self.user.check_password("123colab4")) 57 self.assertTrue(self.user.check_password("123colab4"))
41 self.assertFalse(self.user.check_password("1234")) 58 self.assertFalse(self.user.check_password("1234"))
@@ -65,44 +82,86 @@ class UserTest(TestCase): @@ -65,44 +82,86 @@ class UserTest(TestCase):
65 username_test = "USERtestCoLaB" 82 username_test = "USERtestCoLaB"
66 83
67 user_db = User.objects.get(id=1) 84 user_db = User.objects.get(id=1)
68 - self.assertEqual(user_db.username, username_test.lower()) 85 + self.assertEqual(user_db.username, username_test.lower())
69 self.user.delete() 86 self.user.delete()
70 87
71 def test_update_user_mandatory_information(self): 88 def test_update_user_mandatory_information(self):
72 self.authenticate_user() 89 self.authenticate_user()
  90 + self.validate_mandatory_fields('usertestcolab', 'colabtest',
  91 + 'usertestcolab', 'colabtest')
  92 + self.user.delete()
73 93
74 - data = {'first_name': 'usercolabtest',  
75 - 'last_name': 'colabtest'}  
76 - self.client.post('/account/usertestcolab/edit', data) 94 + def test_update_user_mandatory_max_leght_limit(self):
  95 + self.authenticate_user()
  96 + self.validate_mandatory_fields('a'*30, 'a'*30, 'a'*30, 'a'*30)
  97 + self.user.delete()
77 98
78 - user = User.objects.get(id=1) 99 + def test_update_user_mandatory_max_leght_limit_one_less(self):
  100 + self.authenticate_user()
  101 + self.validate_mandatory_fields('a'*29, 'a'*29, 'a'*29, 'a'*29)
  102 + self.user.delete()
79 103
80 - self.assertEqual('usercolabtest', user.first_name)  
81 - self.assertEqual('colabtest', user.last_name) 104 + def test_update_user_mandatory_max_leght_overflow(self):
  105 + self.authenticate_user()
  106 + self.validate_mandatory_fields('USERtestCoLaB', 'COLAB', 'a'*31, 'a'*31)
82 self.user.delete() 107 self.user.delete()
83 108
84 - def test_update_user_mandatory_invalid_information(self):  
85 - self.authenticate_user() 109 + def test_update_user_mandatory_invalid_empty_field(self):
  110 + self.authenticate_user()
  111 + self.validate_mandatory_fields('USERtestCoLaB', 'COLAB', '' , '')
  112 + self.user.delete()
86 113
87 - data = {'first_name': 'a' * 31,  
88 - 'last_name': 'a' * 31}  
89 - self.client.post('/account/usertestcolab/edit', data) 114 + def test_update_user_mandatory_invalid_whitespace(self):
  115 + self.authenticate_user()
  116 + self.validate_mandatory_fields('USERtestCoLaB', 'COLAB', ' ' , ' ')
  117 + self.user.delete()
90 118
91 - user = User.objects.get(id=1) 119 + def test_update_user_mandatory_invalid_using_number(self):
  120 + self.authenticate_user()
  121 + self.validate_mandatory_fields('USERtestCoLaB', 'COLAB', '123' , '456')
  122 + self.user.delete()
92 123
93 - self.assertEqual('USERtestCoLaB', user.first_name)  
94 - self.assertEqual('COLAB', user.last_name) 124 + def test_update_user_institution(self):
  125 + self.authenticate_user()
  126 + self.validate_non_mandatory_fields('institution', 'fga', 'fga')
  127 + self.user.delete()
95 128
96 - def test_update_user_all_information(self): 129 + def test_update_user_role(self):
  130 + self.authenticate_user()
  131 + self.user.delete()
  132 +
  133 + def test_update_user_twitter(self):
  134 + self.authenticate_user()
  135 + self.validate_non_mandatory_fields('twitter', 'twitter', 'twitter')
  136 + self.user.delete()
  137 +
  138 + def test_update_user_facebook(self):
  139 + self.authenticate_user()
  140 + self.validate_non_mandatory_fields('facebook', 'facebook', 'facebook')
  141 + self.user.delete()
  142 +
  143 + def test_update_user_gtalk(self):
97 self.authenticate_user() 144 self.authenticate_user()
  145 + self.validate_non_mandatory_fields('google_talk', 'gtalk@colab.com.br',
  146 + 'gtalk@colab.com.br')
  147 + self.user.delete()
  148 +
  149 + def test_update_user_github(self):
  150 + self.authenticate_user()
  151 + self.validate_non_mandatory_fields('github', 'github', 'github')
  152 + self.user.delete()
  153 +
  154 + def test_update_user_webpage(self):
  155 + self.authenticate_user()
  156 + self.validate_non_mandatory_fields('webpage', 'webpage', 'webpage')
  157 + self.user.delete()
98 158
99 - data = {'first_name': 'Colab',  
100 - 'last_name': 'Test',  
101 - 'institution': 'fga',  
102 - 'role': 'tester',  
103 - 'twitter': 'twitter',  
104 - 'facebook': 'facebook',  
105 - 'google_talk': 'gtalk',  
106 - 'github': 'github',  
107 - 'webpage': 'webpage',  
108 - 'bio': 'bio'} 159 + def test_update_user_bio(self):
  160 + self.authenticate_user()
  161 + self.validate_non_mandatory_fields('bio', 'bio', 'bio')
  162 + self.user.delete()
  163 +
  164 + def test_update_user_bio_max_length(self):
  165 + self.authenticate_user()
  166 + self.validate_non_mandatory_fields('bio', None, 'a' * 201)
  167 + self.user.delete()