From 21edfd9d8130990a579947d7f0ec6403860afd37 Mon Sep 17 00:00:00 2001 From: Frederik Jaeckel Date: Wed, 22 Jan 2025 18:58:05 +0100 Subject: [PATCH] add test for pdf-import --- tests/document.py | 28 +++++++++++++++++++++++++--- 1 file changed, 25 insertions(+), 3 deletions(-) diff --git a/tests/document.py b/tests/document.py index c7c3013..186b112 100644 --- a/tests/document.py +++ b/tests/document.py @@ -160,7 +160,7 @@ class DocumentTestCase(object): 'facturx-extended.xml'), 'rb') as fhdl: xml_txt = fhdl.read() - incoming = IncDocument(data=xml_txt) + incoming = IncDocument(data=xml_txt, name='facturx-extended.xml') (xsdtype, funcname, xml_data) = incoming._facturx_detect_content() self.assertEqual(xsdtype, 'Factur-X extended') self.assertEqual(funcname, 'facturx_extended') @@ -311,7 +311,7 @@ class DocumentTestCase(object): 'facturx-basic.xml'), 'rb') as fhdl: xml_txt = fhdl.read() - incoming = IncDocument(data=xml_txt) + incoming = IncDocument(data=xml_txt, name='facturx-basic.xml') (xsdtype, funcname, xml_data) = incoming._facturx_detect_content() self.assertEqual(xsdtype, 'Factur-X basic') self.assertEqual(funcname, 'facturx_basic') @@ -426,7 +426,7 @@ class DocumentTestCase(object): 'facturx-en16931.xml'), 'rb') as fhdl: xml_txt = fhdl.read() - incoming = IncDocument(data=xml_txt) + incoming = IncDocument(data=xml_txt, name='facturx-en16931.xml') (xsdtype, funcname, xml_data) = incoming._facturx_detect_content() self.assertEqual(xsdtype, 'Factur-X EN16931') self.assertEqual(funcname, 'facturx_en16931') @@ -530,4 +530,26 @@ class DocumentTestCase(object): self.assertEqual(attachment.data, document.data) self.assertEqual(attachment.name, 'facturx-en16931.xml') + @with_transaction() + def test_xmldoc_check_xml_read_pdf_facturx_basic(self): + """ add incoming-dcument 'PDF+facturx-basic' in memory, + read xml into 'parsed_data' + """ + pool = Pool() + IncDocument = pool.get('document.incoming') + + with open(os.path.join( + os.path.split(__file__)[0], + 'invoice-fx-basic.pdf'), 'rb') as fhdl: + pdf_data = fhdl.read() + + incoming = IncDocument(data=pdf_data, name='invoice-fx-basic.pdf') + (xsdtype, funcname, xml_data) = incoming._facturx_detect_content() + self.assertEqual(incoming.xsd_type, 'PDF + Factur-X basic') + self.assertEqual(xsdtype, 'Factur-X basic') + self.assertEqual(funcname, 'facturx_basic') + + incoming._readxml_facturx_basic(xml_data) + self.assertEqual(incoming.parsed_data, parsed_data_facturx_basic) + # end DocumentTestCase