Add test for `instance_add_url` template tag

This commit is contained in:
Christopher C. Wells 2020-01-30 11:10:36 -08:00 committed by Christopher Charbonneau Wells
parent 2b0e15d8ec
commit 385d833247
1 changed files with 17 additions and 1 deletions

View File

@ -1,8 +1,10 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
from django.contrib.auth.models import User
from django.test import TestCase from django.test import TestCase
from django.utils import timezone from django.utils import timezone
from core.templatetags import bootstrap, duration from core.models import Child, Timer
from core.templatetags import bootstrap, duration, timers
class TemplateTagsTestCase(TestCase): class TemplateTagsTestCase(TestCase):
@ -44,3 +46,17 @@ class TemplateTagsTestCase(TestCase):
self.assertEqual(duration.seconds(delta), 20) self.assertEqual(duration.seconds(delta), 20)
self.assertEqual(duration.seconds(''), 0) self.assertEqual(duration.seconds(''), 0)
self.assertRaises(TypeError, duration.seconds('not a delta')) self.assertRaises(TypeError, duration.seconds('not a delta'))
def test_instance_add_url(self):
child = Child.objects.create(first_name='Test', last_name='Child',
birth_date=timezone.localdate())
user = User.objects.create_user(username='timer')
timer = Timer.objects.create(user=user)
url = timers.instance_add_url({'timer': timer}, 'core:sleep-add')
self.assertEqual(url, '/sleep/add/?timer={}'.format(timer.id))
timer = Timer.objects.create(user=user, child=child)
url = timers.instance_add_url({'timer': timer}, 'core:sleep-add')
self.assertEqual(url, '/sleep/add/?timer={}&child={}'.format(
timer.id, child.slug))