aboutsummaryrefslogtreecommitdiffstats
path: root/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries
diff options
context:
space:
mode:
Diffstat (limited to 'tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries')
-rw-r--r--tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries/DockerContainerManager.py29
-rw-r--r--tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries/EnvsReader.py11
-rw-r--r--tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries/LogReader.py22
3 files changed, 62 insertions, 0 deletions
diff --git a/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries/DockerContainerManager.py b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries/DockerContainerManager.py
new file mode 100644
index 00000000..3e3ae58e
--- /dev/null
+++ b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries/DockerContainerManager.py
@@ -0,0 +1,29 @@
+import docker
+from EnvsReader import EnvsReader
+from docker.types import Mount
+
+class DockerContainerManager:
+
+ def run_pmmapper_container(self, client_image, container_name, path_to_env, dr_node_ip, mr_ip):
+ client = docker.from_env()
+ environment = EnvsReader().read_env_list_from_file(path_to_env)
+ environment.append("CONFIG_BINDING_SERVICE_SERVICE_HOST=172.18.0.5")
+ environment.append("CONFIG_BINDING_SERVICE_SERVICE_PORT=10000")
+ environment.append("HOSTNAME=pmmapper")
+ client.containers.run(
+ image=client_image,
+ name=container_name,
+ environment=environment,
+ ports={'8081': 8081},
+ network='filesprocessingconfigpmmapper_pmmapper-network',
+ extra_hosts={'dmaap-dr-node': dr_node_ip, 'message-router': mr_ip},
+ user='root',
+ mounts=[Mount(target='/opt/app/pm-mapper/etc/certs/', source='/var/tmp/', type='bind')],
+ detach=True
+ )
+
+ def remove_container(self, container_name):
+ client = docker.from_env()
+ container = client.containers.get(container_name)
+ container.stop()
+ container.remove()
diff --git a/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries/EnvsReader.py b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries/EnvsReader.py
new file mode 100644
index 00000000..cc60eed6
--- /dev/null
+++ b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries/EnvsReader.py
@@ -0,0 +1,11 @@
+
+class EnvsReader:
+
+ def read_env_list_from_file(self, path):
+ f = open(path, "r")
+ r_list = []
+ for line in f:
+ line = line.strip()
+ if line[0] != "#":
+ r_list.append(line)
+ return r_list
diff --git a/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries/LogReader.py b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries/LogReader.py
new file mode 100644
index 00000000..01718e35
--- /dev/null
+++ b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries/LogReader.py
@@ -0,0 +1,22 @@
+import re
+
+class LogReader:
+
+ def filter_unique(self, merged_logs_output, testname):
+ logs = merged_logs_output.splitlines()
+ del_logs = list(filter(lambda line: "|DEL|" in line, logs))
+ nrs_set = set()
+ ret_logs = set()
+ for log in del_logs:
+ filename = re.findall(testname + "\d", log)
+ if len(filename) > 0 and filename[0] not in nrs_set:
+ ret_logs.add(log)
+ nrs_set.add(filename[0])
+ return ret_logs
+
+ def get_number_of_dropped_messages(self, logs_output):
+ return len(list(filter(lambda line: "|429|" in line, logs_output)))
+
+ def get_log_files_list(self, fileNames):
+ files = fileNames.split()
+ return files