From 48fcc87bde9b62d2464f823ec9d39a530c974441 Mon Sep 17 00:00:00 2001 From: Cédric Ollivier Date: Thu, 18 May 2017 17:26:49 +0200 Subject: Use StringIO in odl.py MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It avoids creating and removing the temporary file to dump robot output. Change-Id: Ia5ea66e76ffb8b8327f2da938f177e8ef4c61dd4 Signed-off-by: Cédric Ollivier --- functest/opnfv_tests/sdn/odl/odl.py | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) (limited to 'functest/opnfv_tests') diff --git a/functest/opnfv_tests/sdn/odl/odl.py b/functest/opnfv_tests/sdn/odl/odl.py index 6f586b7a..2f3dd74b 100755 --- a/functest/opnfv_tests/sdn/odl/odl.py +++ b/functest/opnfv_tests/sdn/odl/odl.py @@ -30,6 +30,7 @@ import robot.api from robot.errors import RobotError import robot.run from robot.utils.robottime import timestamp_to_secs +from six import StringIO from six.moves import urllib from functest.core import testcase @@ -172,16 +173,11 @@ class ODLTests(testcase.TestCase): self.__logger.exception( "Cannot create %s", self.res_dir) return self.EX_RUN_ERROR - stdout_file = os.path.join(self.res_dir, 'stdout.txt') output_dir = os.path.join(self.res_dir, 'output.xml') - with open(stdout_file, 'w+') as stdout: - robot.run(*suites, variable=variables, - output=output_dir, - log='NONE', - report='NONE', - stdout=stdout) - stdout.seek(0, 0) - self.__logger.info("\n" + stdout.read()) + stream = StringIO() + robot.run(*suites, variable=variables, output=output_dir, + log='NONE', report='NONE', stdout=stream) + self.__logger.info("\n" + stream.getvalue()) self.__logger.info("ODL results were successfully generated") try: self.parse_results() @@ -190,10 +186,6 @@ class ODLTests(testcase.TestCase): self.__logger.error("Run tests before publishing: %s", ex.message) return self.EX_RUN_ERROR - try: - os.remove(stdout_file) - except OSError: - self.__logger.warning("Cannot remove %s", stdout_file) return self.EX_OK else: return self.EX_RUN_ERROR -- cgit 1.2.3-korg