def test_creates_pisa_document_from_stringio(self, string_io, pisa_document): pdf_stream = mock.Mock() rendered_template = mock.Mock() io_streams = [pdf_stream, rendered_template] def side_effect(*args): return io_streams.pop(0) if io_streams else mock.Mock() string_io.side_effect = side_effect pisa_document.return_value.err = None helpers.render_to_pdf(mock.Mock(), mock.Mock()) pisa_document.assert_called_once_with(rendered_template, pdf_stream)
def test_returns_http_response_with_pdf_and_mimetype(self, pisa_document, string_io, http_response): pisa_document.return_value.err = None response = helpers.render_to_pdf(mock.Mock(), mock.Mock()) http_response.assert_called_once_with(string_io.return_value.getvalue.return_value, mimetype='application/pdf') self.assertEqual(http_response.return_value, response)
def test_encodes_rendered_template_with_iso_encoding(self, render_to_string, pisa_document): pisa_document.return_value.err = None rendered_template = render_to_string.return_value = mock.MagicMock() helpers.render_to_pdf(mock.Mock(), mock.Mock()) rendered_template.encode.assert_called_once_with("ISO-8859-1")
def test_creates_stringio_with_encoded_rendered_template(self, render_to_string, string_io, pisa_document): pisa_document.return_value.err = None helpers.render_to_pdf(mock.Mock(), mock.Mock()) string_io.assert_called_with(render_to_string.return_value.encode.return_value)
def test_renders_given_template_and_context_to_string(self, render_to_string): render_to_string.return_value = "" template = mock.Mock() context = mock.Mock() helpers.render_to_pdf(template, context) render_to_string.assert_called_once_with(template, context)