aboutsummaryrefslogtreecommitdiffstats
path: root/src/shorturls/tests
diff options
context:
space:
mode:
authorJacob Kaplan-Moss2009-04-12 18:25:15 -0500
committerJacob Kaplan-Moss2009-04-12 18:25:15 -0500
commit9d86549d74c6d3f4d7e661fd643aee739e268a6d (patch)
treed5ebbd1ae7e1d661de3d18b91eb2f5fd096b0673 /src/shorturls/tests
parentb5ee253b28673fcfad49f09d9d2687e86ed520b7 (diff)
downloaddjango-shorturls-9d86549d74c6d3f4d7e661fd643aee739e268a6d.tar.bz2
Added the templatetag.
Diffstat (limited to 'src/shorturls/tests')
-rw-r--r--src/shorturls/tests/__init__.py3
-rw-r--r--src/shorturls/tests/test_templatetag.py48
2 files changed, 50 insertions, 1 deletions
diff --git a/src/shorturls/tests/__init__.py b/src/shorturls/tests/__init__.py
index 6b7a7a3..25d0b61 100644
--- a/src/shorturls/tests/__init__.py
+++ b/src/shorturls/tests/__init__.py
@@ -1,2 +1,3 @@
from shorturls.tests.models import *
-from shorturls.tests.test_views import * \ No newline at end of file
+from shorturls.tests.test_views import *
+from shorturls.tests.test_templatetag import * \ No newline at end of file
diff --git a/src/shorturls/tests/test_templatetag.py b/src/shorturls/tests/test_templatetag.py
new file mode 100644
index 0000000..2feef91
--- /dev/null
+++ b/src/shorturls/tests/test_templatetag.py
@@ -0,0 +1,48 @@
+from django import template
+from django.conf import settings
+from django.test import TestCase
+from shorturls.tests.models import Animal, Vegetable, Mineral
+
+class RedirectViewTestCase(TestCase):
+ urls = 'shorturls.urls'
+ fixtures = ['shorturls-test-data.json']
+
+ def setUp(self):
+ self.old_shorten = getattr(settings, 'SHORTEN_MODELS', None)
+ self.old_base = getattr(settings, 'SHORT_BASE_URL', None)
+ settings.SHORT_BASE_URL = None
+ settings.SHORTEN_MODELS = {
+ 'A': 'shorturls.animal',
+ 'V': 'shorturls.vegetable',
+ }
+
+ def tearDown(self):
+ if self.old_shorten is not None:
+ settings.SHORTEN_MODELS = self.old_shorten
+ if self.old_base is not None:
+ settings.SHORT_BASE_URL = self.old_base
+
+ def render(self, t, **c):
+ return template.Template('{% load shorturl %}'+t).render(c)
+
+ def test_shorturl(self):
+ r = self.render('{% shorturl a %}', a=Animal.objects.get(id=12345))
+ self.assertEqual(r, '/ADNH')
+
+ def test_bad_context(self):
+ r = self.render('{% shorturl a %}')
+ self.assertEqual(r, '')
+
+ def test_no_prefix(self):
+ r = self.render('{% shorturl m %}', m=Mineral.objects.all()[0])
+ self.assertEqual(r, '')
+
+ def test_short_base_url(self):
+ settings.SHORT_BASE_URL = 'http://example.com/'
+ r = self.render('{% shorturl a %}', a=Animal.objects.get(id=12345))
+ self.assertEqual(r, 'http://example.com/ADNH')
+
+ def test_revcanonical(self):
+ r = self.render('{% revcanonical a %}', a=Animal.objects.get(id=12345))
+ self.assertEqual(r, '<link rev="canonical" href="/ADNH">')
+ \ No newline at end of file