Commit d120c8d269372b6992336b02baa8fe2618121efb

Authored by Felipe Henrique de Almeida Bormann
1 parent 3d3bb33c

updating test cases

Showing 1 changed file with 31 additions and 2 deletions   Show diff stats
categories/tests/test_views.py
@@ -3,26 +3,35 @@ from users.models import User @@ -3,26 +3,35 @@ from users.models import User
3 from django.contrib.auth.models import AnonymousUser 3 from django.contrib.auth.models import AnonymousUser
4 from .. import views 4 from .. import views
5 5
  6 +from ..models import Category
6 from django.shortcuts import render 7 from django.shortcuts import render
7 8
8 class Index_Test(TestCase): 9 class Index_Test(TestCase):
9 10
10 def setUp(self): 11 def setUp(self):
  12 +
  13 + """Set up all the variables we need for these test"""
11 self.factory = RequestFactory() 14 self.factory = RequestFactory()
12 self.user = User.objects.create(username="felipe", email="felipe.bormann@gmail.com", password="teste") 15 self.user = User.objects.create(username="felipe", email="felipe.bormann@gmail.com", password="teste")
13 self.admin = User.objects.create_superuser('admin', email = 'admin@teste.com', password = 'teste') 16 self.admin = User.objects.create_superuser('admin', email = 'admin@teste.com', password = 'teste')
  17 + self.coordinator = User.objects.create(username="coordinator", email="felipe@gmail.com", password="teste")
  18 + #self.category = Category.objects.create(name="test", coordinators=self.coordinator)
  19 +
  20 + def test_index_get_not_admin(self):
14 21
15 - def test_index_get_auth(self): 22 + """Tests if an user can get into 'manage categories' page and be redirected"""
16 request = self.factory.get('categories/') 23 request = self.factory.get('categories/')
17 24
18 request.user = self.user 25 request.user = self.user
19 26
20 response = views.IndexView.as_view()(request) 27 response = views.IndexView.as_view()(request)
21 28
22 - self.assertEqual(response.status_code, 200) 29 + self.assertEqual(response.status_code, 302)
23 30
24 def test_index_get_unauth(self): 31 def test_index_get_unauth(self):
25 32
  33 + """Tests if an unauthenticated user can get into 'manage categories' page and be redirected"""
  34 +
26 request = self.factory.get('categories/') 35 request = self.factory.get('categories/')
27 36
28 request.user = AnonymousUser() 37 request.user = AnonymousUser()
@@ -32,6 +41,8 @@ class Index_Test(TestCase): @@ -32,6 +41,8 @@ class Index_Test(TestCase):
32 self.assertEqual(response.status_code, 302) #Which means it is been redirected to login page 41 self.assertEqual(response.status_code, 302) #Which means it is been redirected to login page
33 42
34 def test_create_category(self): 43 def test_create_category(self):
  44 + """Tests if an admin can access and the create_category page is displayed and rendered without errors"""
  45 +
35 request = self.factory.get('categories/create') 46 request = self.factory.get('categories/create')
36 request.user = self.admin 47 request.user = self.admin
37 48
@@ -44,6 +55,7 @@ class Index_Test(TestCase): @@ -44,6 +55,7 @@ class Index_Test(TestCase):
44 55
45 56
46 def test_create_category_unauth(self): 57 def test_create_category_unauth(self):
  58 + """Tests if an unauthenticated user can get into 'create categories' page and be redirected"""
47 request = self.factory.get('categories/create') 59 request = self.factory.get('categories/create')
48 60
49 request.user = AnonymousUser() 61 request.user = AnonymousUser()
@@ -51,4 +63,21 @@ class Index_Test(TestCase): @@ -51,4 +63,21 @@ class Index_Test(TestCase):
51 response = views.IndexView.as_view()(request) 63 response = views.IndexView.as_view()(request)
52 64
53 self.assertEqual(response.status_code, 302) #Which means it is been redirected to login page 65 self.assertEqual(response.status_code, 302) #Which means it is been redirected to login page
  66 +
  67 + def test_create_category_not_admin(self):
  68 + """Tests if a non-admin user can get into 'create categories' page and be redirected"""
  69 + request = self.factory.get('categories/create')
  70 + request.user = self.user
  71 + response = views.IndexView.as_view()(request)
  72 +
  73 + self.assertEqual(response.status_code, 302) #Which means it is been redirected to main page or login page
  74 +
  75 + def test_update_category_not_coordinator(self):
  76 +
  77 + request = self.factory.get('categories/create')
  78 + request.user = self.user
  79 + response = views.UpdateCategory.as_view()(request, self.category.slug)
  80 +
  81 + self.assertEqual(response.status_code, 302) #Which means it is been redirected to main page or login page
  82 +
54 83
55 \ No newline at end of file 84 \ No newline at end of file