[Erp5-report] r40599 nicolas - in /erp5/trunk/utils/cloudooo: ./ cloudooo/tests/ cloudooo/t...
nobody at svn.erp5.org
nobody at svn.erp5.org
Wed Nov 24 15:01:24 CET 2010
Author: nicolas
Date: Wed Nov 24 15:01:23 2010
New Revision: 40599
URL: http://svn.erp5.org?rev=40599&view=rev
Log:
Test refresh argument of OOoHandler
add lxml as dependency used inside test
Added:
erp5/trunk/utils/cloudooo/cloudooo/tests/data/test_fields.odt (with props)
Modified:
erp5/trunk/utils/cloudooo/cloudooo/tests/testOOHandler.py
erp5/trunk/utils/cloudooo/setup.py
Added: erp5/trunk/utils/cloudooo/cloudooo/tests/data/test_fields.odt
URL: http://svn.erp5.org/erp5/trunk/utils/cloudooo/cloudooo/tests/data/test_fields.odt?rev=40599&view=auto
==============================================================================
Binary file - no diff available.
Propchange: erp5/trunk/utils/cloudooo/cloudooo/tests/data/test_fields.odt
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Modified: erp5/trunk/utils/cloudooo/cloudooo/tests/testOOHandler.py
URL: http://svn.erp5.org/erp5/trunk/utils/cloudooo/cloudooo/tests/testOOHandler.py?rev=40599&r1=40598&r2=40599&view=diff
==============================================================================
--- erp5/trunk/utils/cloudooo/cloudooo/tests/testOOHandler.py [utf8] (original)
+++ erp5/trunk/utils/cloudooo/cloudooo/tests/testOOHandler.py [utf8] Wed Nov 24 15:01:23 2010
@@ -34,14 +34,22 @@ from cloudoooTestCase import cloudoooTes
from cloudooo.handler.oohandler import OOHandler
from cloudooo.application.openoffice import openoffice
from cloudoooTestCase import make_suite
+import os
+from lxml import etree
+from zipfile import ZipFile
class TestOOHandler(cloudoooTestCase):
"""Test OOHandler and manipulation of OOo Instance"""
+ _file_path_list = []
+
def _save_document(self, document_output_url, data):
"""Create document in file system"""
- open(document_output_url, "w").write(data)
+ new_file = open(document_output_url, "w")
+ new_file.write(data)
+ new_file.close()
+ self._file_path_list.append(document_output_url)
def _assert_document_output(self, document_output_url, msg):
"""Check if the document was created correctly"""
@@ -52,6 +60,16 @@ class TestOOHandler(cloudoooTestCase):
True,
"\nStdout: %sMsg: %s" % (stdout, msg))
+ def tearDown(self):
+ """Cleanup temp files
+ """
+ while self._file_path_list:
+ file_path = self._file_path_list.pop()
+ if os.path.exists(file_path):
+ os.remove(file_path)
+ cloudoooTestCase.tearDown(self)
+
+
def testConvertOdtToDoc(self):
"""Test convert ODT to DOC"""
data = encodestring(open("data/test.odt").read())
@@ -152,6 +170,35 @@ class TestOOHandler(cloudoooTestCase):
metadata = new_handler.getMetadata()
self.assertEquals(metadata.get('Title'), "cloudooo Test -")
+ def testRefreshOdt(self):
+ """Test refresh argument"""
+ # Check when refreshing is disabled
+ data = encodestring(open("data/test_fields.odt").read())
+ handler = OOHandler(self.tmp_url,
+ decodestring(data),
+ 'odt',
+ refresh=False)
+ doc_exported = handler.convert("odt")
+ document_output_url = path.join(self.tmp_url, "testExport.odt")
+ self._save_document(document_output_url, doc_exported)
+ zip_handler = ZipFile(document_output_url)
+ content_tree = etree.fromstring(zip_handler.read('content.xml'))
+ self.assertFalse(content_tree.xpath('//text:variable-get[text() = "DISPLAY ME"]',
+ namespaces=content_tree.nsmap))
+
+ # Check when refreshing is enabled
+ data = encodestring(open("data/test_fields.odt").read())
+ handler = OOHandler(self.tmp_url,
+ decodestring(data),
+ 'odt',
+ refresh=True)
+ doc_exported = handler.convert("odt")
+ document_output_url = path.join(self.tmp_url, "testExport.odt")
+ self._save_document(document_output_url, doc_exported)
+ zip_handler = ZipFile(document_output_url)
+ content_tree = etree.fromstring(zip_handler.read('content.xml'))
+ self.assertTrue(content_tree.xpath('//text:variable-get[text() = "DISPLAY ME"]',
+ namespaces=content_tree.nsmap))
def test_suite():
return make_suite(TestOOHandler)
Modified: erp5/trunk/utils/cloudooo/setup.py
URL: http://svn.erp5.org/erp5/trunk/utils/cloudooo/setup.py?rev=40599&r1=40598&r2=40599&view=diff
==============================================================================
--- erp5/trunk/utils/cloudooo/setup.py [utf8] (original)
+++ erp5/trunk/utils/cloudooo/setup.py [utf8] Wed Nov 24 15:01:23 2010
@@ -33,6 +33,7 @@ setup(name='cloudooo',
'WSGIUtils',
'jsonpickle',
'psutil',
+ 'lxml',
],
entry_points="""
[paste.app_factory]
More information about the Erp5-report
mailing list