Commit 2650a83e28556caf16e52d2f8d5708b2f2442bd0
1 parent
b3b22b7a
Exists in
master
and in
2 other branches
created 2 tests for use cases of report views and fixed the errors attached to them
Showing
2 changed files
with
45 additions
and
0 deletions
Show diff stats
... | ... | @@ -0,0 +1,45 @@ |
1 | +from django.test import TestCase, Client, override_settings | |
2 | +from django.core.urlresolvers import resolve | |
3 | +from reports.views import ReportView | |
4 | +from subjects.models import Subject | |
5 | +from users.models import User | |
6 | + | |
7 | +from datetime import datetime | |
8 | + | |
9 | +class ReportTest(TestCase): | |
10 | + | |
11 | + def setUp(self): | |
12 | + self.c = Client() | |
13 | + self.student = User.objects.create(username = "student01", email= "student01@amadeus.br", password="amadeus") | |
14 | + if self.c.login(email="student01@amadeus.br", password="amadeus"): | |
15 | + print("student01 logged in") | |
16 | + | |
17 | + self.subject = Subject.objects.create(name="subject", visible= True, init_date= datetime.now(), end_date= datetime.now(), | |
18 | + subscribe_begin = datetime.now(), subscribe_end= datetime.now() ) | |
19 | + | |
20 | + self.invisible_subject = Subject.objects.create(name="subject invisible", visible= False, init_date= datetime.now(), end_date= datetime.now(), | |
21 | + subscribe_begin = datetime.now(), subscribe_end= datetime.now() ) | |
22 | + self.subject.students.add(self.student) | |
23 | + self.professor = User.objects.create(username= "professor01", email= "professor01@amadeus.br", password="amadeus") | |
24 | + self.subject.professor.add(self.professor) | |
25 | + | |
26 | + | |
27 | + """ | |
28 | + check if it's still possible to create a report | |
29 | + """ | |
30 | + @override_settings(STATICFILES_STORAGE = None) # added decorator because of Whitenoise error | |
31 | + def test_access_report_create_view(self): | |
32 | + self.c.logout() #to logout student of setup | |
33 | + self.c.login(email="professor01@amadeus.br", password="amadeus") #use professor of subject as logged in | |
34 | + response = self.c.get('/subjects/report/create/interactions/?subject_id='+ str(self.subject.id), follow = True) | |
35 | + self.assertEqual(response.status_code, 200) | |
36 | + | |
37 | + @override_settings(STATICFILES_STORAGE = None) # added decorator | |
38 | + def test_restrict_acess_to_student_report_view(self): | |
39 | + """ | |
40 | + test when an student from the subject tries to access the subject analytics report builder, it will redirect | |
41 | + """ | |
42 | + report_view = self.c.get('/subjects/report/create/interactions/?subject_id='+ str(self.subject.id)) | |
43 | + | |
44 | + self.assertEqual(report_view.url, "/subjects/home") | |
45 | + | |
0 | 46 | \ No newline at end of file | ... | ... |