From 7a1266f584e1056f53f85ff0c44e80c39f04196c Mon Sep 17 00:00:00 2001
From: Nicolas Delaby <nicolas@nexedi.com>
Date: Wed, 12 May 2010 18:07:51 +0000
Subject: [PATCH] Add Two test   * To check convertionToBaseFormat of a
 TextDocument with data encoded into iso-8859-1   * To check PDF.asText
 conversion with ocropus as backend (Image embedded inside PDF)

git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@35272 20353a03-c40f-0410-a6d1-a30d3c3de9de
---
 product/ERP5OOo/tests/testDms.py              |  26 ++++++++++++++++++
 .../test_document/TEST-text-iso8859-1.txt     |   2 ++
 .../test_document/TEST.Embedded.Image.pdf     | Bin 0 -> 5829 bytes
 3 files changed, 28 insertions(+)
 create mode 100644 product/ERP5OOo/tests/test_document/TEST-text-iso8859-1.txt
 create mode 100644 product/ERP5OOo/tests/test_document/TEST.Embedded.Image.pdf

diff --git a/product/ERP5OOo/tests/testDms.py b/product/ERP5OOo/tests/testDms.py
index de30b7e523..776cf841e9 100644
--- a/product/ERP5OOo/tests/testDms.py
+++ b/product/ERP5OOo/tests/testDms.py
@@ -1662,6 +1662,32 @@ style=3D'color:black'>05D65812<o:p></o:p></span></p>
     web_page.edit()
     self.assertFalse(web_page.hasConversion(format='txt'))
 
+  def test_TextDocument_conversion_to_base_format(self):
+    """Check that any files is converted into utf-8
+    """
+    web_page_portal_type = 'Web Page'
+    module = self.portal.getDefaultModule(web_page_portal_type)
+    upload_file = makeFileUpload('TEST-text-iso8859-1.txt')
+    web_page = module.newContent(portal_type=web_page_portal_type,
+                                 file=upload_file)
+
+    text_content = web_page.getTextContent()
+    my_utf_eight_token = 'ùééàçèîà'
+    text_content = text_content.replace('\n', '\n%s\n' % my_utf_eight_token)
+    web_page.edit(text_content=text_content)
+    self.assertTrue(my_utf_eight_token in web_page.asStrippedHTML())
+    self.assertTrue(isinstance(web_page.asEntireHTML().decode('utf-8'), unicode))
+
+  def test_PDFDocument_asTextConversion(self):
+    """Test a PDF document with embedded images
+    To force usage of Ocropus portal_transform chain
+    """
+    portal_type = 'PDF'
+    module = self.portal.getDefaultModule(portal_type)
+    upload_file = makeFileUpload('TEST.Embedded.Image.pdf')
+    document = module.newContent(portal_type=portal_type, file=upload_file)
+    self.assertEquals(document.asText(), 'ERP5 is a free software.\n')
+
 class TestDocumentWithSecurity(TestDocumentMixin):
 
   username = 'yusei'
diff --git a/product/ERP5OOo/tests/test_document/TEST-text-iso8859-1.txt b/product/ERP5OOo/tests/test_document/TEST-text-iso8859-1.txt
new file mode 100644
index 0000000000..524a1d0cf1
--- /dev/null
+++ b/product/ERP5OOo/tests/test_document/TEST-text-iso8859-1.txt
@@ -0,0 +1,2 @@
+This is a web page encoded in iso-8859-1
+éèàùôâïî
diff --git a/product/ERP5OOo/tests/test_document/TEST.Embedded.Image.pdf b/product/ERP5OOo/tests/test_document/TEST.Embedded.Image.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..2bbe41986356c4a8fc1b42f5cde7084dfb435254
GIT binary patch
literal 5829
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

literal 0
HcmV?d00001

-- 
2.30.9