From 71a4b9e6fcf35a0ee2c86d2ab627a201529ba9a7 Mon Sep 17 00:00:00 2001 From: Harshal Pohekar <106588300+hpohekar@users.noreply.github.com> Date: Tue, 30 Aug 2022 15:52:42 +0530 Subject: [PATCH] Replaced python sdk usage with docker cli (#800) * Replaced python sdk usage with docker cli * Removed docker requirement and updated get ids function --- requirements/requirements_tests.txt | 3 +-- tests/test_fluent_session.py | 26 ++++++++++++++++---------- 2 files changed, 17 insertions(+), 12 deletions(-) diff --git a/requirements/requirements_tests.txt b/requirements/requirements_tests.txt index 2b953226d8f..afc4dd0fb03 100644 --- a/requirements/requirements_tests.txt +++ b/requirements/requirements_tests.txt @@ -1,5 +1,4 @@ pytest pytest-mock pytest-cov -psutil>=5.9.1 -docker>=5.0.3 \ No newline at end of file +psutil>=5.9.1 \ No newline at end of file diff --git a/tests/test_fluent_session.py b/tests/test_fluent_session.py index 0ff9fb49f63..a9d2cca0c26 100644 --- a/tests/test_fluent_session.py +++ b/tests/test_fluent_session.py @@ -1,4 +1,5 @@ import os +import subprocess import time import psutil @@ -10,7 +11,6 @@ import ansys.fluent.core as pyfluent from ansys.fluent.core.examples import download_file from ansys.fluent.core.session import _FluentConnection -import docker def _read_case(session): @@ -54,18 +54,25 @@ def print_transcript(transcript): assert not print_transcript.called +def get_container_ids_set(): + proc = subprocess.Popen(["docker", "ps", "-q"], stdout=subprocess.PIPE) + output_bytes = proc.stdout.read() + output_str = output_bytes.decode() + ids = output_str.strip().split() + return set(ids) + + def test_server_exits_when_session_goes_out_of_scope(with_launching_container) -> None: def f(): session = pyfluent.launch_fluent(mode="solver") f.server_pid = session.scheme_eval.scheme_eval("(%cx-process-id)") if os.getenv("PYFLUENT_START_INSTANCE") == "0": - client = docker.from_env() - containers_before = client.containers.list() + containers_before = get_container_ids_set() f() time.sleep(10) - containers_after = client.containers.list() - new_containers = set(containers_after) - set(containers_before) + containers_after = get_container_ids_set() + new_containers = containers_after - containers_before assert not new_containers else: f() @@ -81,15 +88,14 @@ def f(): f.server_pid = session.scheme_eval.scheme_eval("(%cx-process-id)") if os.getenv("PYFLUENT_START_INSTANCE") == "0": - client = docker.from_env() - containers_before = client.containers.list() + containers_before = get_container_ids_set() f() time.sleep(10) - containers_after = client.containers.list() - new_containers = set(containers_after) - set(containers_before) + containers_after = get_container_ids_set() + new_containers = containers_after - containers_before assert new_containers for container in new_containers: - container.stop() + subprocess.Popen(["docker", "stop", container]) else: f() time.sleep(10)