Merge branch 'master' into sunburnt
[wolnelektury.git] / apps / dictionary / tests.py
1 # -*- coding: utf-8 -*-
2 # This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later.
3 # Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
4 #
5 from django.core.files.base import ContentFile
6 from catalogue.test_utils import *
7 from catalogue.models import Book
8 from dictionary.models import Note
9
10
11 class DictionaryTests(WLTestCase):
12
13     def setUp(self):
14         WLTestCase.setUp(self)
15         self.book_info = BookInfoStub(
16             author=PersonStub(("Jim",), "Lazy"),
17             kind="X-Kind",
18             genre="X-Genre",
19             epoch="X-Epoch",
20             **info_args(u"Default Book")
21         )
22
23     def test_book_with_footnote(self):
24         BOOK_TEXT = """<utwor>
25         <opowiadanie>
26             <akap><pe><slowo_obce>rose</slowo_obce> --- kind of a flower.</pe></akap>
27         </opowiadanie></utwor>
28         """
29
30         book = Book.from_text_and_meta(ContentFile(BOOK_TEXT), self.book_info)
31
32         self.assertEqual(
33             len(self.client.get('/przypisy/').context['object_list']),
34             1,
35             'There should be a note on the note list.')
36
37         self.assertEqual(
38             len(self.client.get('/przypisy/a/').context['object_list']),
39             0,
40             'There should not be a note for the letter A.')
41
42         self.assertEqual(
43             len(self.client.get('/przypisy/r/').context['object_list']),
44             1,
45             'There should be a note for the letter R.')
46