Commit a7a92bb6623ad60d3fc294364c9f02a65faff473

Authored by Matheus Fernandes
Committed by Sergio Oliveira
1 parent ef91fcc0

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'}
... ...