diff options
author | Cédric Ollivier <cedric.ollivier@orange.com> | 2018-10-21 17:03:51 +0200 |
---|---|---|
committer | Cédric Ollivier <cedric.ollivier@orange.com> | 2018-10-21 17:45:15 +0200 |
commit | 1e06b66fd345e4f3429700d98c7810ed8951d9f5 (patch) | |
tree | 7512fed8a196770c0b69d5ff9ceeee57f66201b7 | |
parent | 1a6df95057d586c2db9883c483d77b55d33c28bb (diff) |
Harden Rally generate report
It converts html_file to str and raises all possible exceptions.
It sometimes fails when locally generating reports.
Change-Id: Idf6a12aaac4561800cd5e364f8bcc495aabbee1d
Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
(cherry picked from commit 4d3627e56d333e313b67bbf1e7880b11883b5652)
-rw-r--r-- | functest/opnfv_tests/openstack/tempest/tempest.py | 5 | ||||
-rw-r--r-- | functest/tests/unit/openstack/tempest/test_tempest.py | 6 |
2 files changed, 4 insertions, 7 deletions
diff --git a/functest/opnfv_tests/openstack/tempest/tempest.py b/functest/opnfv_tests/openstack/tempest/tempest.py index 910b54615..4d5a0f547 100644 --- a/functest/opnfv_tests/openstack/tempest/tempest.py +++ b/functest/opnfv_tests/openstack/tempest/tempest.py @@ -314,9 +314,8 @@ class TempestCommon(singlevm.VmReady2): html_file = os.path.join(self.res_dir, "tempest-report.html") cmd = ["rally", "verify", "report", "--type", "html", "--uuid", - self.verification_id, "--to", html_file] - subprocess.Popen(cmd, stdout=subprocess.PIPE, - stderr=subprocess.STDOUT) + self.verification_id, "--to", str(html_file)] + subprocess.check_output(cmd) def update_rally_regex(self, rally_conf='/etc/rally/rally.conf'): """Set image name as tempest img_name_regex""" diff --git a/functest/tests/unit/openstack/tempest/test_tempest.py b/functest/tests/unit/openstack/tempest/test_tempest.py index c87c0b085..67e7dd431 100644 --- a/functest/tests/unit/openstack/tempest/test_tempest.py +++ b/functest/tests/unit/openstack/tempest/test_tempest.py @@ -170,8 +170,7 @@ class OSTempestTesting(unittest.TestCase): mock_logger_info. \ assert_any_call("Starting Tempest test suite: '%s'.", cmd) - @mock.patch('functest.opnfv_tests.openstack.tempest.tempest.' - 'subprocess.Popen') + @mock.patch('subprocess.check_output') def test_generate_report(self, mock_popen): self.tempestcommon.verification_id = "1234" html_file = os.path.join( @@ -182,8 +181,7 @@ class OSTempestTesting(unittest.TestCase): cmd = ["rally", "verify", "report", "--type", "html", "--uuid", "1234", "--to", html_file] self.tempestcommon.generate_report() - mock_popen.assert_called_once_with(cmd, stdout=mock.ANY, - stderr=mock.ANY) + mock_popen.assert_called_once_with(cmd) @mock.patch('functest.opnfv_tests.openstack.tempest.tempest.' 'os.path.exists', return_value=False) |