Tested for Django 1.6-2.2
[django-sponsors.git] / example_project / tests.py
1 from django.core.files.base import ContentFile
2 from django.test import TestCase
3 from sponsors.models import Sponsor, SponsorPage
4 from PIL import Image
5
6 try:
7     from io import BytesIO
8 except ImportError:
9     # Python 2
10     from StringIO import StringIO as BytesIO
11
12
13 class SponsorsTest(TestCase):
14     def test_empty_page(self):
15         page = SponsorPage(name='test')
16         page.save()
17
18     def test_simple_sponsor(self):
19         s = Sponsor(name='Test Sponsor')
20         im = Image.new('1', (1,1))
21         b = BytesIO()
22         im.save(b, 'PNG')
23         s.logo.save('test.png', ContentFile(b.getvalue()), save=True)
24
25         page = SponsorPage(
26             name='Sponsor',
27             sponsors=[
28                 {"name": "empty-column", "sponsors": []},
29                 {"name": "test-column", "sponsors": [s.id]},
30             ])
31         page.save()
32         self.assertNotIn('empty-column', page._html)
33         self.assertIn('test-column', page._html)
34         self.assertIn('Test Sponsor', page._html)
35