[Erp5-report] r42067 gabriel - in /erp5/trunk/utils/cloudooo/cloudooo/handler: ooo/ ooo/tes...
nobody at svn.erp5.org
nobody at svn.erp5.org
Thu Jan 6 16:36:14 CET 2011
Author: gabriel
Date: Thu Jan 6 16:36:14 2011
New Revision: 42067
URL: http://svn.erp5.org?rev=42067&view=rev
Log:
continuation of r42064. Avoid usage of shell == True.
Added:
erp5/trunk/utils/cloudooo/cloudooo/handler/pdf/
Modified:
erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/handler.py
erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testAllFormats.py
erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testFileSystemDocument.py
erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testHighLoad.py
erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testOOHandler.py
erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testServer.py
erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testUnoConverter.py
erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testUnoMimemapper.py
Modified: erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/handler.py
URL: http://svn.erp5.org/erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/handler.py?rev=42067&r1=42066&r2=42067&view=diff
==============================================================================
--- erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/handler.py [utf8] (original)
+++ erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/handler.py [utf8] Thu Jan 6 16:36:14 2011
@@ -85,7 +85,7 @@ class OOHandler:
for k, v in kw.iteritems():
command_list.append("--%s='%s'" % (k, v))
- return ' '.join(command_list)
+ return command_list
def _startTimeout(self):
"""start the Monitor"""
@@ -98,14 +98,13 @@ class OOHandler:
self.monitor.terminate()
return
- def _subprocess(self, command):
+ def _subprocess(self, command_list):
"""Run one procedure"""
if monitor_sleeping_time is not None:
monitor_sleeping_time.touch()
try:
self._startTimeout()
- process = Popen(command,
- shell=True,
+ process = Popen(command_list,
stdout=PIPE,
stderr=PIPE,
close_fds=True)
@@ -121,8 +120,8 @@ class OOHandler:
if not openoffice.status():
xvfb.restart()
openoffice.start()
- command = self._getCommand(*feature_list, **kw)
- stdout, stderr = self._subprocess(command)
+ command_list = self._getCommand(*feature_list, **kw)
+ stdout, stderr = self._subprocess(command_list)
if not stdout and len(re.findall("\w*Exception|\w*Error", stderr)) >= 1:
logger.debug(stderr)
self.document.restoreOriginal()
Modified: erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testAllFormats.py
URL: http://svn.erp5.org/erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testAllFormats.py?rev=42067&r1=42066&r2=42067&view=diff
==============================================================================
--- erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testAllFormats.py [utf8] (original)
+++ erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testAllFormats.py [utf8] Thu Jan 6 16:36:14 2011
@@ -83,8 +83,8 @@ class TestAllFormats(CloudoooTestCase):
continue
output_file_url = '%s/test_%s.%s' % (self.tmp_url, document_type, extension[0])
open(output_file_url, 'w').write(decodestring(data_output))
- stdout, stderr = Popen("file %s" % output_file_url,
- shell=True,
+ command = [file, output_file_url]
+ stdout, stderr = Popen(command,
stdout=PIPE,
stderr=PIPE).communicate()
self.assertEquals(stdout.endswith(": empty"), False, stdout)
Modified: erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testFileSystemDocument.py
URL: http://svn.erp5.org/erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testFileSystemDocument.py?rev=42067&r1=42066&r2=42067&view=diff
==============================================================================
--- erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testFileSystemDocument.py [utf8] (original)
+++ erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testFileSystemDocument.py [utf8] Thu Jan 6 16:36:14 2011
@@ -106,8 +106,9 @@ class TestFileSystemDocument(unittest.Te
open(path.join(self.fsdocument.directory_name, 'document2'), 'w').write('test')
zip_file = self.fsdocument.getContent(True)
open(zip_output_url, 'w').write(zip_file)
- stdout, stderr = Popen("file %s" % zip_output_url,
- shell=True, stdout=PIPE).communicate()
+ command = ["file", zip_output_url]
+ stdout, stderr = Popen(command,
+ stdout=PIPE).communicate()
self.assertEquals(stdout, '/tmp/ziptest.zip: Zip archive data, at least v2.0 to extract\n')
ziptest = ZipFile(zip_output_url, 'r')
self.assertEquals(len(ziptest.filelist), 2)
Modified: erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testHighLoad.py
URL: http://svn.erp5.org/erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testHighLoad.py?rev=42067&r1=42066&r2=42067&view=diff
==============================================================================
--- erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testHighLoad.py [utf8] (original)
+++ erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testHighLoad.py [utf8] Thu Jan 6 16:36:14 2011
@@ -47,8 +47,9 @@ class TestHighLoad(CloudoooTestCase):
document = self.proxy.convertFile(data, source_format, destination_format)
document_output_url = os.path.join(self.tmp_url, "%s.%s" % (id, destination_format))
open(document_output_url, 'wb').write(decodestring(document))
- stdout, stderr = subprocess.Popen("file -b %s" % document_output_url,
- shell=True, stdout=subprocess.PIPE).communicate()
+ command_list = ["file", "-b", document_output_url]
+ stdout, stderr = subprocess.Popen(command_list,
+ stdout=subprocess.PIPE).communicate()
self.assertEquals(stdout, 'PDF document, version 1.4\n')
self.assertEquals(stderr, None)
os.remove(document_output_url)
Modified: erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testOOHandler.py
URL: http://svn.erp5.org/erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testOOHandler.py?rev=42067&r1=42066&r2=42067&view=diff
==============================================================================
--- erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testOOHandler.py [utf8] (original)
+++ erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testOOHandler.py [utf8] Thu Jan 6 16:36:14 2011
@@ -53,8 +53,8 @@ class TestOOHandler(CloudoooTestCase):
def _assert_document_output(self, document_output_url, msg):
"""Check if the document was created correctly"""
- stdout, stderr = Popen("file -b %s" % document_output_url,
- shell=True,
+ command_list = ["file", "-b", document_output_url]
+ stdout, stderr = Popen(command_list
stdout=PIPE).communicate()
self.assertEquals(msg in stdout,
True,
Modified: erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testServer.py
URL: http://svn.erp5.org/erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testServer.py?rev=42067&r1=42066&r2=42067&view=diff
==============================================================================
--- erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testServer.py [utf8] (original)
+++ erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testServer.py [utf8] Thu Jan 6 16:36:14 2011
@@ -108,11 +108,15 @@ class TestServer(CloudoooTestCase):
source_format,
destination_format, zip)
open(output_url, 'w').write(decodestring(output_data))
- stdout, stderr = Popen("file -b %s" % output_url, shell=True,
- stdout=PIPE).communicate()
+ stdout, stderr = self._getFileType(output_url)
self.assertEquals(stdout, stdout_msg)
self.assertEquals(stderr, None)
+ def _getFileType(self, output_url):
+ return Popen(["file", "-b", output_url],
+ stdout=PIPE,
+ stderr=PIPE).communicate()
+
def testGetAllowedExtensionListByType(self):
"""Call getAllowedExtensionList and verify if the returns is a list with
extension and ui_name. The request is by document type"""
@@ -187,8 +191,7 @@ class TestServer(CloudoooTestCase):
True)
self.assertNotEquals(metadata_dict.get("Data"), None)
open(document_output_url, 'w').write(decodestring(metadata_dict["Data"]))
- stdout, stderr = Popen("file -b %s" % document_output_url, shell=True,
- stdout=PIPE).communicate()
+ stdout, stderr = self._getFileType(document_output_url)
self.assertEquals(stdout, 'OpenDocument Text\n')
self.assertEquals(metadata_dict.get("Title"), "cloudooo Test")
self.assertEquals(metadata_dict.get("Subject"), "Subject Test")
@@ -204,8 +207,7 @@ class TestServer(CloudoooTestCase):
odf_data = self.proxy.updateFileMetadata(encodestring(data), 'odt',
{"Title":"testSetMetadata"})
open(document_output_url, 'w').write(decodestring(odf_data))
- stdout, stderr = Popen("file -b %s" % document_output_url, shell=True,
- stdout=PIPE).communicate()
+ stdout, stderr = self._getFileType(document_output_url)
self.assertEquals(stdout, 'OpenDocument Text\n')
metadata_dict = self.proxy.getFileMetadataItemList(odf_data, 'odt')
self.assertEquals(metadata_dict.get("Title"), "testSetMetadata")
@@ -221,8 +223,7 @@ class TestServer(CloudoooTestCase):
'odt',
{"Reference":"testSetMetadata"})
open(document_output_url, 'w').write(decodestring(odf_data))
- stdout, stderr = Popen("file -b %s" % document_output_url, shell=True,
- stdout=PIPE).communicate()
+ stdout, stderr = self._getFileType(document_output_url)
self.assertEquals(stdout, 'OpenDocument Text\n')
metadata_dict = self.proxy.getFileMetadataItemList(odf_data, 'odt')
self.assertEquals(metadata_dict.get("Reference"), "testSetMetadata")
@@ -237,8 +238,7 @@ class TestServer(CloudoooTestCase):
new_odf_data = self.proxy.updateFileMetadata(odf_data, 'odt',
{"Reference":"new value", "Something": "ABC"})
open(document_output_url, 'w').write(decodestring(new_odf_data))
- stdout, stderr = Popen("file -b %s" % document_output_url, shell=True,
- stdout=PIPE).communicate()
+ stdout, stderr = self._getFileType(document_output_url)
self.assertEquals(stdout, 'OpenDocument Text\n')
metadata_dict = self.proxy.getFileMetadataItemList(new_odf_data, 'odt')
self.assertEquals(metadata_dict.get("Reference"), "new value")
@@ -437,8 +437,7 @@ class TestServer(CloudoooTestCase):
try:
png_path = join(self.tmp_url, "img0.png")
zipfile.extractall(self.tmp_url)
- stdout, stderr = Popen("file -b %s" % png_path, shell=True,
- stdout=PIPE).communicate()
+ stdout, stderr = self._getFileType(png_path)
self.assertTrue(stdout.startswith('PNG image data'), stdout)
self.assertTrue("8-bit/color RGB" in stdout, stdout)
finally:
Modified: erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testUnoConverter.py
URL: http://svn.erp5.org/erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testUnoConverter.py?rev=42067&r1=42066&r2=42067&view=diff
==============================================================================
--- erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testUnoConverter.py [utf8] (original)
+++ erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testUnoConverter.py [utf8] Thu Jan 6 16:36:14 2011
@@ -73,13 +73,15 @@ class TestUnoConverter(CloudoooTestCase)
"--destination_format='%s'" % "doc",
"--source_format='%s'" % "odt",
"--mimemapper='%s'" % mimemapper_pickled]
- stdout, stderr = Popen(' '.join(command), shell=True,
+ stdout, stderr = Popen(command,
stdout=PIPE, stderr=PIPE).communicate()
self.assertEquals(stderr, '')
output_url = stdout.replace('\n', '')
self.assertTrue(exists(output_url), stdout)
- stdout, stderr = Popen("file %s" % output_url, shell=True,
- stdout=PIPE, stderr=PIPE).communicate()
+ command = [file, output_url]
+ stdout, stderr = Popen(command,
+ stdout=PIPE,
+ stderr=PIPE).communicate()
self.assertEquals(self.file_msg_list[1] in stdout \
or \
self.file_msg_list[0] in stdout,
Modified: erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testUnoMimemapper.py
URL: http://svn.erp5.org/erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testUnoMimemapper.py?rev=42067&r1=42066&r2=42067&view=diff
==============================================================================
--- erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testUnoMimemapper.py [utf8] (original)
+++ erp5/trunk/utils/cloudooo/cloudooo/handler/ooo/tests/testUnoMimemapper.py [utf8] Thu Jan 6 16:36:14 2011
@@ -61,8 +61,9 @@ class TestUnoMimeMapper(CloudoooTestCase
"'--office_binary_path=%s'" % self.office_binary_path,
"'--hostname=%s'" % self.hostname,
"'--port=%s'" % self.openoffice_port]
- stdout, stderr = Popen(' '.join(command), shell=True,
- stdout=PIPE, stderr=PIPE).communicate()
+ stdout, stderr = Popen(command,
+ stdout=PIPE,
+ stderr=PIPE).communicate()
self.assertEquals(stderr, '')
filter_dict, type_dict = json.loads(stdout)
self.assertTrue('filter_dict' in locals())
@@ -81,8 +82,9 @@ class TestUnoMimeMapper(CloudoooTestCase
"handler/ooo/helper/unomimemapper.py"),
"'--hostname=%s'" % self.hostname,
"'--port=%s'" % self.openoffice_port]
- stdout, stderr = Popen(' '.join(command), shell=True,
- stdout=PIPE, stderr=PIPE).communicate()
+ stdout, stderr = Popen(command,
+ stdout=PIPE,
+ stderr=PIPE).communicate()
self.assertEquals(stderr, '')
filter_dict, type_dict = json.loads(stdout)
self.assertTrue('filter_dict' in locals())
@@ -106,8 +108,9 @@ class TestUnoMimeMapper(CloudoooTestCase
"'--office_binary_path=%s'" % self.office_binary_path,
"'--hostname=%s'" % self.hostname,
"'--port=%s'" % self.openoffice_port]
- stdout, stderr = Popen(' '.join(command), shell=True,
- stdout=PIPE, stderr=PIPE).communicate()
+ stdout, stderr = Popen(command,
+ stdout=PIPE,
+ stderr=PIPE).communicate()
self.assertEquals(stdout, '')
self.assertTrue(stderr.endswith(error_msg), stderr)
openoffice.start()
More information about the Erp5-report
mailing list