Commit c482ce4707c93b3426d778d2769aad9d937b4a3d
Committed by
Sergio Oliveira
1 parent
a7a92bb6
Exists in
master
and in
39 other branches
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() |