diff --git a/tests/integration/network_interface_name/__init__.py b/tests/integration/network_interface_name/__init__.py new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/tests/integration/network_interface_name/__init__.py @@ -0,0 +1 @@ + diff --git a/tests/integration/network_interface_name/docker-compose.yml b/tests/integration/network_interface_name/docker-compose.yml new file mode 100644 index 0000000..5d1c4bf --- /dev/null +++ b/tests/integration/network_interface_name/docker-compose.yml @@ -0,0 +1,10 @@ +version: "3" +networks: + mystack: +services: + web: + image: busybox + command: ["/bin/busybox", "httpd", "-f", "-h", ".", "-p", "8004"] + networks: + mystack: + x-podman.interface_name: customName0 diff --git a/tests/integration/network_interface_name/test_podman_compose_network_interface_name.py b/tests/integration/network_interface_name/test_podman_compose_network_interface_name.py new file mode 100644 index 0000000..b87faef --- /dev/null +++ b/tests/integration/network_interface_name/test_podman_compose_network_interface_name.py @@ -0,0 +1,58 @@ +# SPDX-License-Identifier: GPL-2.0 + +# pylint: disable=redefined-outer-name +import os +import unittest + +from tests.integration.test_utils import RunSubprocessMixin +from tests.integration.test_utils import podman_compose_path +from tests.integration.test_utils import test_path + + +class TestPodmanComposeNetworkInterfaceName(RunSubprocessMixin, unittest.TestCase): + def compose_file(self): + return os.path.join(test_path(), "network_interface_name", "docker-compose.yml") + + def up(self): + up_cmd = [ + "coverage", + "run", + podman_compose_path(), + "-f", + self.compose_file(), + "up", + "-d", + "--force-recreate", + ] + self.run_subprocess_assert_returncode(up_cmd) + + def down(self): + down_cmd = [ + "coverage", + "run", + podman_compose_path(), + "-f", + self.compose_file(), + "kill", + "-a", + ] + self.run_subprocess(down_cmd) + + def test_interface_name(self): + try: + self.up() + + interfaces_cmd = [ + podman_compose_path(), + "-f", + self.compose_file(), + "exec", + "web", + "ls", + "/sys/class/net", + "--color=never", + ] + out, _ = self.run_subprocess_assert_returncode(interfaces_cmd) + self.assertEqual("customName0 lo\r\n", out.decode()) + finally: + self.down()