test_CourseCategory.py
3.05 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
from django.test import TestCase, Client
from django.core.urlresolvers import reverse
from rolepermissions.shortcuts import assign_role
from users.models import User
from courses.models import CourseCategory
class ForumViewTestCase (TestCase):
def setUp(self):
self.user = User.objects.create_user(
username = 'test',
email = 'testing@amadeus.com',
is_staff = True,
is_active = True,
password = 'testing'
)
assign_role(self.user, 'system_admin')
self.user_professor = User.objects.create_user(
username = 'professor',
email = 'professor@amadeus.com',
is_staff = False,
is_active = True,
password = 'testing',
type_profile = 1
)
assign_role(self.user_professor, 'professor')
self.user_student = User.objects.create_user(
username = 'student',
email = 'student@amadeus.com',
is_staff = False,
is_active = True,
password = 'testing',
type_profile = 2
)
assign_role(self.user_student, 'student')
self.category = CourseCategory.objects.create(
name = 'Test Category'
)
self.category.save()
self.client = Client()
self.client.login(username='test', password='testing')
self.client_professor = Client()
self.client_professor.login (username='professor', password='testing')
self.client_student = Client()
self.client_student.login (username='student', password='testing')
######################### CreateCatView #########################
def test_CreateCatView_ok (self):
url = reverse('course:create_cat')
response = self.client.get(url)
self.assertEquals(response.status_code, 200)
response = self.client_professor.get(url)
self.assertEquals(response.status_code, 200)
response = self.client_student.get(url)
self.assertEquals(response.status_code, 403)
def test_CreateCatView_context (self):
url = reverse('course:create_cat')
response = self.client.get(url)
self.assertTrue('form' in response.context)
response = self.client_professor.get(url)
self.assertTrue('form' in response.context)
def test_CreateCatView_form_error (self):
url = reverse('course:create_cat')
data = {'name':''}
list_categories = CourseCategory.objects.all().count()
response = self.client.post(url, data)
self.assertEquals(list_categories, CourseCategory.objects.all().count())
response = self.client_professor.post(url, data)
self.assertEquals(list_categories, CourseCategory.objects.all().count())
def test_CreateCatView_form_ok (self):
url = reverse('course:create_cat')
data = {
'name':'Second Category',
}
list_categories = CourseCategory.objects.all().count()
response = self.client.post(url, data)
self.assertEquals (response.status_code, 302)
self.assertEquals(list_categories+1, CourseCategory.objects.all().count())
data = {
'name' : 'Third Category',
}
response = self.client_professor.post(url, data)
self.assertEquals (response.status_code, 302)
self.assertEquals(list_categories+2, CourseCategory.objects.all().count())