def test_call_os_error(self, mock_popen): mock_popen.return_value.communicate.side_effect = SubprocessError pdf_file = mock.MagicMock() pdf = PDFFiller(pdf_file, {}, True) with pytest.raises(PDFNotFilled): pdf.call("/foo", "/bar")
def test_call_os_error(self, mock_popen): mock_popen.return_value.communicate.side_effect = SubprocessError pdf_file = mock.MagicMock() pdf = PDFFiller(pdf_file, {}, True) with pytest.raises(PDFNotFilled): pdf.call('/foo', '/bar')
def test_call_non_zero_return_code(self, mock_popen): mock_popen.return_value.communicate.return_value = "stdout", "stderr" mock_popen.return_value.returncode = 5 pdf_file = mock.MagicMock() pdf = PDFFiller(pdf_file, {}, True) with pytest.raises(PDFNotFilled): pdf.call("/foo", "/bar")
def test_call_non_zero_return_code(self, mock_popen): mock_popen.return_value.communicate.return_value = 'stdout', 'stderr' mock_popen.return_value.returncode = 5 pdf_file = mock.MagicMock() pdf = PDFFiller(pdf_file, {}, True) with pytest.raises(PDFNotFilled): pdf.call('/foo', '/bar')
def test_call(self, mock_popen): mock_popen.return_value.communicate.return_value = "stdout", "stderr" mock_popen.return_value.returncode = 0 pdf_file = mock.MagicMock() pdf = PDFFiller(pdf_file, {}, True) actual = pdf.call("/foo", "/bar") assert actual == "stdout" mock_popen.assert_called_once_with( "/pdftk /bar fill_form /foo output - flatten", shell=True, stdout=PIPE, stderr=PIPE, stdin=PIPE )
def test_generate_fdf(self): pdf = PDFFiller(ContentFile(''), {'foo': 'bar'}) fdf = pdf.generate_fdf() assert fdf == ( b'<?xml version="1.0" encoding="UTF-8"?>' b'<xfdf xmlns="http://ns.adobe.com/xfdf/" xml:space="preserve">' b'<fields>' b'<field name="foo"><value>bar</value></field>' b'</fields>' b'</xfdf>')
def test_generate_fdf(self): pdf = PDFFiller(ContentFile(""), {"foo": "bar"}) fdf = pdf.generate_fdf() assert fdf == ( b'<?xml version="1.0" encoding="UTF-8"?>' b'<xfdf xmlns="http://ns.adobe.com/xfdf/" xml:space="preserve">' b"<fields>" b'<field name="foo"><value>bar</value></field>' b"</fields>" b"</xfdf>" )
def test_call(self, mock_popen): mock_popen.return_value.communicate.return_value = 'stdout', 'stderr' mock_popen.return_value.returncode = 0 pdf_file = mock.MagicMock() pdf = PDFFiller(pdf_file, {}, True) actual = pdf.call('/foo', '/bar') assert actual == 'stdout' mock_popen.assert_called_once_with( '/pdftk /bar fill_form /foo output - flatten', shell=True, stdout=PIPE, stderr=PIPE, stdin=PIPE)
def test__call(self, mock_tmp_file, mock_generate_fdf, mock_call): pdf_file = mock.MagicMock() pdf = PDFFiller(pdf_file, {}, True) actual = pdf() assert actual == mock_call.return_value mock_tmp_file.assert_any_call('wb', suffix='.xfdf') mock_tmp_file.assert_any_call('wb', suffix='.pdf') mock_tmp_file().__enter__().write.assert_any_call( mock_generate_fdf.return_value) mock_tmp_file().__enter__().write.assert_any_call( pdf_file.read.return_value) mock_tmp_file().__enter__().close.assert_any_call()
def test_init(self): pdf = PDFFiller(mock.sentinel.pdf, mock.sentinel.data, True) assert pdf.pdf == mock.sentinel.pdf assert pdf.data == mock.sentinel.data assert pdf.flatten