diff options
author | Filip Krzywka <filip.krzywka@nokia.com> | 2018-08-06 10:07:03 +0200 |
---|---|---|
committer | Filip Krzywka <filip.krzywka@nokia.com> | 2018-08-31 07:47:38 +0200 |
commit | d95a67029072015b75161aa180a72f242eda90ea (patch) | |
tree | 94a4f279ba5396bd6d08e05552262e471284f8a8 /test/csit/tests/dcaegen2-collectors-hv-ves/testcases/libraries | |
parent | f15077f640d033c1eb50d5496b27b6d6739d7e76 (diff) |
Configure HV-VES suite containers
- populate consul with HV-VES configuration
- make DCAE app simulator to consume messages from non-default
kafka topic
Change-Id: I13773476f271b533236c0888fa5d091a0ee46a23
Issue-ID: DCAEGEN2-687
Signed-off-by: Filip Krzywka <filip.krzywka@nokia.com>
Diffstat (limited to 'test/csit/tests/dcaegen2-collectors-hv-ves/testcases/libraries')
4 files changed, 88 insertions, 0 deletions
diff --git a/test/csit/tests/dcaegen2-collectors-hv-ves/testcases/libraries/ConsulLibrary.py b/test/csit/tests/dcaegen2-collectors-hv-ves/testcases/libraries/ConsulLibrary.py new file mode 100644 index 000000000..52d7e0eab --- /dev/null +++ b/test/csit/tests/dcaegen2-collectors-hv-ves/testcases/libraries/ConsulLibrary.py @@ -0,0 +1,16 @@ +from robot.api import logger +import HttpRequests + +CONSUL_NAME = "Consul" + +class ConsulLibrary: + + def publish_hv_ves_configuration_in_consul(self, consul_url, consul_configuration_filepath): + logger.info("Reading consul configuration file from: " + consul_configuration_filepath) + file = open(consul_configuration_filepath, "rb") + data = file.read() + file.close() + + logger.info("PUT at: " + consul_url) + resp = HttpRequests.session_without_env().put(consul_url, data=data, timeout=5) + HttpRequests.checkStatusCode(resp.status_code, CONSUL_NAME)
\ No newline at end of file diff --git a/test/csit/tests/dcaegen2-collectors-hv-ves/testcases/libraries/DcaeAppSimulatorLibrary.py b/test/csit/tests/dcaegen2-collectors-hv-ves/testcases/libraries/DcaeAppSimulatorLibrary.py new file mode 100644 index 000000000..29e5b5721 --- /dev/null +++ b/test/csit/tests/dcaegen2-collectors-hv-ves/testcases/libraries/DcaeAppSimulatorLibrary.py @@ -0,0 +1,26 @@ +import HttpRequests +from robot.api import logger + +DCAE_APP_NAME = "DCAE App" + +class DcaeAppSimulatorLibrary: + + def configure_dcae_app_simulator_to_consume_messages_from_topics(self, app_url, topics): + logger.info("PUT at: " + app_url) + resp = HttpRequests.session_without_env().put(app_url, data={'topics': topics}, timeout=5) + HttpRequests.checkStatusCode(resp.status_code, DCAE_APP_NAME) + + def assert_DCAE_app_consumed(self, app_url, expected_messages_amount): + logger.info("GET at: " + app_url) + resp = HttpRequests.session_without_env().get(app_url, timeout=5) + HttpRequests.checkStatusCode(resp.status_code, DCAE_APP_NAME) + + assert resp.content == expected_messages_amount, \ + "Messages consumed by simulator: " + resp.content + " expecting: " + expected_messages_amount + + + def reset_DCAE_app_simulator(self, app_url): + logger.info("DELETE at: " + app_url) + resp = HttpRequests.session_without_env().delete(app_url, timeout=5) + HttpRequests.checkStatusCode(resp.status_code, DCAE_APP_NAME) + diff --git a/test/csit/tests/dcaegen2-collectors-hv-ves/testcases/libraries/HttpRequests.py b/test/csit/tests/dcaegen2-collectors-hv-ves/testcases/libraries/HttpRequests.py new file mode 100644 index 000000000..0d1d928b5 --- /dev/null +++ b/test/csit/tests/dcaegen2-collectors-hv-ves/testcases/libraries/HttpRequests.py @@ -0,0 +1,12 @@ +import requests +from robot.api import logger + +def session_without_env(): + session = requests.Session() + session.trust_env = False + return session + +def checkStatusCode(status_code, server_name): + if status_code != 200: + logger.error("Response status code from " + server_name + ": " + str(status_code)) + raise (Exception(server_name + " returned status code " + status_code))
\ No newline at end of file diff --git a/test/csit/tests/dcaegen2-collectors-hv-ves/testcases/libraries/VesHvContainersUtilsLibrary.py b/test/csit/tests/dcaegen2-collectors-hv-ves/testcases/libraries/VesHvContainersUtilsLibrary.py new file mode 100644 index 000000000..4db04612e --- /dev/null +++ b/test/csit/tests/dcaegen2-collectors-hv-ves/testcases/libraries/VesHvContainersUtilsLibrary.py @@ -0,0 +1,34 @@ +from time import time + +from robot.api import logger +import os.path + +LOCALHOST = "localhost" + + +class VesHvContainersUtilsLibrary: + + def get_consul_api_access_url(self, method, image_name, port): + return self.create_url( + method, + self.get_instance_address(image_name, port) + ) + + def get_dcae_app_api_access_url(self, method, image_name, port): + return self.create_url( + method, + self.get_instance_address(image_name, port) + ) + + def get_instance_address(self, image_name, port): + if is_running_inside_docker(): + return image_name + ":" + port + else: + logger.info("File `/.dockerenv` not found. Assuming local environment and using localhost.") + return LOCALHOST + ":" + port + + def create_url(self, method, host_address): + return method + host_address + +def is_running_inside_docker(): + return os.path.isfile("/.dockerenv") |