Correct documented return values
[functest-xtesting.git] / xtesting / core / robotframework.py
index 4cba7bb..3e3d9de 100644 (file)
 
 from __future__ import division
 
-import errno
 import logging
 import os
 
+from io import StringIO
 import robot.api
 from robot.errors import RobotError
 from robot.reporting import resultwriter
 import robot.run
 from robot.utils.robottime import timestamp_to_secs
-from six import StringIO
 
 from xtesting.core import testcase
 
@@ -54,12 +53,10 @@ class RobotFramework(testcase.TestCase):
     """RobotFramework runner."""
 
     __logger = logging.getLogger(__name__)
-    dir_results = "/var/lib/xtesting/results"
 
     def __init__(self, **kwargs):
-        self.res_dir = os.path.join(self.dir_results, 'robot')
+        super().__init__(**kwargs)
         self.xml_file = os.path.join(self.res_dir, 'output.xml')
-        super(RobotFramework, self).__init__(**kwargs)
 
     def parse_results(self):
         """Parse output.xml and get the details in it."""
@@ -110,15 +107,12 @@ class RobotFramework(testcase.TestCase):
         except KeyError:
             self.__logger.exception("Mandatory args were not passed")
             return self.EX_RUN_ERROR
-        try:
-            os.makedirs(self.res_dir)
-        except OSError as ex:
-            if ex.errno != errno.EEXIST:
+        if not os.path.exists(self.res_dir):
+            try:
+                os.makedirs(self.res_dir)
+            except Exception:  # pylint: disable=broad-except
                 self.__logger.exception("Cannot create %s", self.res_dir)
                 return self.EX_RUN_ERROR
-        except Exception:  # pylint: disable=broad-except
-            self.__logger.exception("Cannot create %s", self.res_dir)
-            return self.EX_RUN_ERROR
         stream = StringIO()
         robot.run(*suites, variable=variable, variablefile=variablefile,
                   include=include, output=self.xml_file, log='NONE',
@@ -127,7 +121,7 @@ class RobotFramework(testcase.TestCase):
         try:
             self.parse_results()
             self.__logger.info("Results were successfully parsed")
-            assert self.generate_report() == 0
+            self.generate_report()
             self.__logger.info("Results were successfully generated")
         except RobotError as ex:
             self.__logger.error("Run suites before publishing: %s", ex.message)