aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBenoit HERARD <benoit.herard@orange.com>2017-09-28 13:31:29 +0200
committerBenoit HERARD <benoit.herard@orange.com>2017-09-28 13:31:29 +0200
commit86d5c31424187329f69a7e0efaa9dbe0dac98e56 (patch)
treeafcffcd31386b216fe1ed65f697b92dfb0ca3d0a
parent405a0872282f5b29bb9e60ba19b11b17c8047647 (diff)
Fix connection error due to invalid lib version usage.
Connection timeouts on "requests" objects was developped with requests 2.18 but target runtime is 2.12. Advanced timeout management of 2.18 is not available in 2.12. Change-Id: Ie6d81b91d4bcc0d73cffd007d9e46cdb19e47597 Signed-off-by: Benoit HERARD <benoit.herard@orange.com>
-rw-r--r--functest/energy/energy.py14
-rw-r--r--functest/tests/unit/energy/test_functest_energy.py2
2 files changed, 10 insertions, 6 deletions
diff --git a/functest/energy/energy.py b/functest/energy/energy.py
index 2aabc06d..119942bb 100644
--- a/functest/energy/energy.py
+++ b/functest/energy/energy.py
@@ -16,7 +16,6 @@ import urllib
from functools import wraps
import requests
-import urllib3
from functest.utils.constants import CONST
import functest.utils.functest_utils as ft_utils
@@ -27,6 +26,9 @@ def finish_session(current_scenario):
if current_scenario is None:
EnergyRecorder.stop()
else:
+ EnergyRecorder.logger.debug("Restoring previous scenario (%s/%s)",
+ current_scenario["scenario"],
+ current_scenario["step"])
EnergyRecorder.submit_scenario(
current_scenario["scenario"],
current_scenario["step"]
@@ -78,7 +80,7 @@ class EnergyRecorder(object):
INITIAL_STEP = "running"
# Default connection timeout
- CONNECTION_TIMEOUT = urllib3.Timeout(connect=1, read=3)
+ CONNECTION_TIMEOUT = 4
@staticmethod
def load_config():
@@ -102,8 +104,6 @@ class EnergyRecorder(object):
uri_comp = "/recorders/environment/"
uri_comp += urllib.quote_plus(environment)
- EnergyRecorder.logger.debug(
- "API recorder at: " + energy_recorder_uri + uri_comp)
# Creds
creds_usr = ft_utils.get_functest_config(
@@ -124,6 +124,9 @@ class EnergyRecorder(object):
},
timeout=EnergyRecorder.CONNECTION_TIMEOUT)
api_available = json.loads(resp.text)["status"] == "OK"
+ EnergyRecorder.logger.info(
+ "API recorder available at : %s",
+ energy_recorder_uri + uri_comp)
except Exception as exc: # pylint: disable=broad-except
EnergyRecorder.logger.info(
"Energy recorder API is not available, cause=%s",
@@ -151,7 +154,8 @@ class EnergyRecorder(object):
return_status = True
# Ensure that connectyvity settings are loaded
if EnergyRecorder.load_config():
- EnergyRecorder.logger.debug("Submitting scenario")
+ EnergyRecorder.logger.debug("Submitting scenario (%s/%s)",
+ scenario, step)
# Create API payload
payload = {
diff --git a/functest/tests/unit/energy/test_functest_energy.py b/functest/tests/unit/energy/test_functest_energy.py
index 738bd3e1..99110802 100644
--- a/functest/tests/unit/energy/test_functest_energy.py
+++ b/functest/tests/unit/energy/test_functest_energy.py
@@ -249,7 +249,7 @@ class EnergyRecorderTest(unittest.TestCase):
calls = [mock.call.start(self.case_name),
mock.call.submit_scenario(PREVIOUS_SCENARIO,
PREVIOUS_STEP)]
- recorder_mock.assert_has_calls(calls)
+ recorder_mock.assert_has_calls(calls, True)
def test_decorator_preserve_return(self):
"""Test that decorator preserve method returned value."""