Commit a7a92bb6623ad60d3fc294364c9f02a65faff473
Committed by
Sergio Oliveira
1 parent
ef91fcc0
Exists in
master
and in
39 other branches
Testing update user information
Showing
1 changed file
with
53 additions
and
1 deletions
Show diff stats
colab/accounts/tests/test_user.py
| ... | ... | @@ -3,13 +3,17 @@ Test User class. |
| 3 | 3 | Objective: Test parameters, and behavior. |
| 4 | 4 | """ |
| 5 | 5 | from colab.accounts.models import User |
| 6 | -from django.test import TestCase | |
| 6 | +from django.test import TestCase, Client | |
| 7 | 7 | |
| 8 | 8 | |
| 9 | 9 | class UserTest(TestCase): |
| 10 | 10 | |
| 11 | 11 | def setUp(self): |
| 12 | 12 | self.user = self.create_user() |
| 13 | + self.client = Client() | |
| 14 | + | |
| 15 | + def tearDown(self): | |
| 16 | + pass | |
| 13 | 17 | |
| 14 | 18 | def create_user(self): |
| 15 | 19 | user = User() |
| ... | ... | @@ -19,10 +23,19 @@ class UserTest(TestCase): |
| 19 | 23 | user.id = 1 |
| 20 | 24 | user.twitter = "usertestcolab" |
| 21 | 25 | user.facebook = "usertestcolab" |
| 26 | + user.first_name = "USERtestCoLaB" | |
| 27 | + user.last_name = "COLAB" | |
| 22 | 28 | user.save() |
| 23 | 29 | |
| 24 | 30 | return user |
| 25 | 31 | |
| 32 | + def authenticate_user(self): | |
| 33 | + self.user.needs_update = False | |
| 34 | + self.user.save() | |
| 35 | + | |
| 36 | + self.client.login(username=self.user.username, | |
| 37 | + password='123colab4') | |
| 38 | + | |
| 26 | 39 | def test_check_password(self): |
| 27 | 40 | self.assertTrue(self.user.check_password("123colab4")) |
| 28 | 41 | self.assertFalse(self.user.check_password("1234")) |
| ... | ... | @@ -54,3 +67,42 @@ class UserTest(TestCase): |
| 54 | 67 | user_db = User.objects.get(id=1) |
| 55 | 68 | self.assertEqual(user_db.username, username_test.lower()) |
| 56 | 69 | self.user.delete() |
| 70 | + | |
| 71 | + def test_update_user_mandatory_information(self): | |
| 72 | + self.authenticate_user() | |
| 73 | + | |
| 74 | + data = {'first_name': 'usercolabtest', | |
| 75 | + 'last_name': 'colabtest'} | |
| 76 | + self.client.post('/account/usertestcolab/edit', data) | |
| 77 | + | |
| 78 | + user = User.objects.get(id=1) | |
| 79 | + | |
| 80 | + self.assertEqual('usercolabtest', user.first_name) | |
| 81 | + self.assertEqual('colabtest', user.last_name) | |
| 82 | + self.user.delete() | |
| 83 | + | |
| 84 | + def test_update_user_mandatory_invalid_information(self): | |
| 85 | + self.authenticate_user() | |
| 86 | + | |
| 87 | + data = {'first_name': 'a' * 31, | |
| 88 | + 'last_name': 'a' * 31} | |
| 89 | + self.client.post('/account/usertestcolab/edit', data) | |
| 90 | + | |
| 91 | + user = User.objects.get(id=1) | |
| 92 | + | |
| 93 | + self.assertEqual('USERtestCoLaB', user.first_name) | |
| 94 | + self.assertEqual('COLAB', user.last_name) | |
| 95 | + | |
| 96 | + def test_update_user_all_information(self): | |
| 97 | + self.authenticate_user() | |
| 98 | + | |
| 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'} | ... | ... |