summaryrefslogtreecommitdiffstats
path: root/tools/pharos-dashboard/src/booking/tests/test_views.py
diff options
context:
space:
mode:
authormaxbr <maxbr@mi.fu-berlin.de>2016-10-17 14:56:11 +0200
committermaxbr <maxbr@mi.fu-berlin.de>2016-10-17 14:56:11 +0200
commitaf9b7ddeb637278a7705964ba98c8e6a2e7307f4 (patch)
tree503203445b0760bc5cd13c1e2d2347fe7fa069bf /tools/pharos-dashboard/src/booking/tests/test_views.py
parent7022542bc70c448f71fa56c06d90595e276d7dcc (diff)
Add unit tests
JIRA: RELENG-12 This commit increases test statement coverage to 84%. It also fixes the bugs that emerged while testing. Change-Id: I696091f1a07f8b7647872c7cb15f4368a4690619 Signed-off-by: maxbr <maxbr@mi.fu-berlin.de>
Diffstat (limited to 'tools/pharos-dashboard/src/booking/tests/test_views.py')
-rw-r--r--tools/pharos-dashboard/src/booking/tests/test_views.py37
1 files changed, 31 insertions, 6 deletions
diff --git a/tools/pharos-dashboard/src/booking/tests/test_views.py b/tools/pharos-dashboard/src/booking/tests/test_views.py
index e568c155..c1da013c 100644
--- a/tools/pharos-dashboard/src/booking/tests/test_views.py
+++ b/tools/pharos-dashboard/src/booking/tests/test_views.py
@@ -10,12 +10,10 @@
from datetime import timedelta
-from django.contrib import auth
from django.test import Client
-from django.utils import timezone
-from django.contrib.auth.models import Permission
from django.test import TestCase
from django.urls import reverse
+from django.utils import timezone
from django.utils.encoding import force_text
from registration.forms import User
@@ -37,9 +35,6 @@ class BookingViewTestCase(TestCase):
self.user1profile = UserProfile.objects.create(user=self.user1)
self.user1.save()
- self.add_booking_perm = Permission.objects.get(codename='add_booking')
- self.user1.user_permissions.add(self.add_booking_perm)
-
self.user1 = User.objects.get(pk=self.user1.id)
@@ -78,4 +73,34 @@ class BookingViewTestCase(TestCase):
self.assertIn('resource', response.context)
+ def test_booking_view(self):
+ start = timezone.now()
+ end = start + timedelta(weeks=1)
+ booking = Booking.objects.create(start=start, end=end, user=self.user1, resource=self.res1)
+ url = reverse('booking:detail', kwargs={'booking_id':0})
+ response = self.client.get(url)
+ self.assertEqual(response.status_code, 404)
+
+ url = reverse('booking:detail', kwargs={'booking_id':booking.id})
+ response = self.client.get(url)
+ self.assertEqual(response.status_code, 200)
+ self.assertTemplateUsed('booking/booking_detail.html')
+ self.assertIn('booking', response.context)
+
+ def test_booking_list_view(self):
+ start = timezone.now() - timedelta(weeks=2)
+ end = start + timedelta(weeks=1)
+ Booking.objects.create(start=start, end=end, user=self.user1, resource=self.res1)
+
+ url = reverse('booking:list')
+ response = self.client.get(url)
+ self.assertEqual(response.status_code, 200)
+ self.assertTemplateUsed('booking/booking_list.html')
+ self.assertTrue(len(response.context['bookings']) == 0)
+
+ start = timezone.now()
+ end = start + timedelta(weeks=1)
+ Booking.objects.create(start=start, end=end, user=self.user1, resource=self.res1)
+ response = self.client.get(url)
+ self.assertTrue(len(response.context['bookings']) == 1) \ No newline at end of file