X-Git-Url: http://gitweb.fperrin.net/?p=djsite.git;a=blobdiff_plain;f=quotes%2Ftests.py;h=772d4e3491d90f143de4b1cdab5d22107dd81c32;hp=3836f4e5e829dce28360b52e25235f0b2215dc40;hb=96df33af88b26f4674557bd07fb8b9696936f451;hpb=13c2e4fc8a5506cfa074c06335a73d28a173aba9 diff --git a/quotes/tests.py b/quotes/tests.py index 3836f4e..772d4e3 100644 --- a/quotes/tests.py +++ b/quotes/tests.py @@ -1,8 +1,8 @@ -import sys from django.test import TestCase, Client # Create your tests here. from .models import Tag, Author, Work, Quote +import re class QuoteTest(TestCase): def setUp(self): @@ -53,6 +53,24 @@ class ViewsTest(TestCase): self.assertTrue(q.text in content, content) self.assertTrue(q.notes in content, content) + def test_random(self): + seen = {} + for q in Quote.objects.all(): + seen[q.id] = False + + # Permalink + permalinkre = re.compile(r'([0-9]+).*Permalink') + + for i in xrange(100): + content = self.getPage('random') + m = permalinkre.search(content) + self.assertIsNotNone(m, content) + quoteid = int(m.group(1)) + self.assertIn(quoteid, seen) + seen[quoteid] = True + for q in Quote.objects.all(): + self.assertTrue(seen[q.id]) + def test_views_all_data(self): q = Quote.objects.filter(text__startswith="Quote01") self.assertEqual(q.count(), 1)