|
| 1 | +# coding=utf-8 |
| 2 | + |
| 3 | +from django.test import RequestFactory |
| 4 | +from django.test.testcases import TestCase |
| 5 | + |
| 6 | +from .rendering import html_to_pdf, render_to_pdf, render_to_pdf_response |
| 7 | +from .views import PDFTemplateView |
| 8 | + |
| 9 | + |
| 10 | +class EasyPDFBasicTestCase(TestCase): |
| 11 | + def setUp(self): |
| 12 | + self.factory = RequestFactory() |
| 13 | + self.template_name = 'easy_pdf/base.html' |
| 14 | + |
| 15 | + def test_pdf_rendering(self): |
| 16 | + content = html_to_pdf('<html><body><div>hello</div></body></html>') |
| 17 | + self.assertEqual(content[:4], b'%PDF') |
| 18 | + |
| 19 | + def test_template_rendering(self): |
| 20 | + content = render_to_pdf(self.template_name, {'greeting': 'hello'}) |
| 21 | + self.assertEqual(content[:4], b'%PDF') |
| 22 | + |
| 23 | + def test_response_rendering(self): |
| 24 | + request = self.factory.get('/sample/') |
| 25 | + response = render_to_pdf_response(request, self.template_name, {'greeting': 'hello'}) |
| 26 | + self.assertEqual(response.content[:4], b'%PDF') |
| 27 | + |
| 28 | + def test_view_rendering(self): |
| 29 | + request = self.factory.get('/sample/') |
| 30 | + view = PDFTemplateView.as_view(template_name=self.template_name) |
| 31 | + response = view(request) |
| 32 | + self.assertEqual(response.status_code, 200) |
| 33 | + self.assertEqual(response.content[:4], b'%PDF') |
0 commit comments