From e901eac7a8c5f29c7720eafb9f58c8356cca2324 Mon Sep 17 00:00:00 2001 From: Milas Bowman Date: Fri, 12 Aug 2022 14:27:53 -0400 Subject: [PATCH] test: add additional tests for cgroupns option (#3024) See #2930. Signed-off-by: Milas Bowman --- tests/integration/api_container_test.py | 14 ++++++++++++++ tests/unit/api_container_test.py | 19 +++++++++++++++++++ 2 files changed, 33 insertions(+) diff --git a/tests/integration/api_container_test.py b/tests/integration/api_container_test.py index 8f69e41ff..0cb8fec68 100644 --- a/tests/integration/api_container_test.py +++ b/tests/integration/api_container_test.py @@ -215,6 +215,20 @@ def test_create_with_mac_address(self): self.client.kill(id) + @requires_api_version('1.41') + def test_create_with_cgroupns(self): + host_config = self.client.create_host_config(cgroupns='private') + + container = self.client.create_container( + image=TEST_IMG, + command=['sleep', '60'], + host_config=host_config, + ) + self.tmp_containers.append(container) + + res = self.client.inspect_container(container) + assert 'private' == res['HostConfig']['CgroupnsMode'] + def test_group_id_ints(self): container = self.client.create_container( TEST_IMG, 'id -G', diff --git a/tests/unit/api_container_test.py b/tests/unit/api_container_test.py index 3a2fbde88..8f120f4d4 100644 --- a/tests/unit/api_container_test.py +++ b/tests/unit/api_container_test.py @@ -1069,6 +1069,25 @@ def test_create_container_with_host_config_cpus(self): ''') assert args[1]['headers'] == {'Content-Type': 'application/json'} + @requires_api_version('1.41') + def test_create_container_with_cgroupns(self): + self.client.create_container( + image='busybox', + command='true', + host_config=self.client.create_host_config( + cgroupns='private', + ), + ) + + args = fake_request.call_args + assert args[0][1] == url_prefix + 'containers/create' + + expected_payload = self.base_create_payload() + expected_payload['HostConfig'] = self.client.create_host_config() + expected_payload['HostConfig']['CgroupnsMode'] = 'private' + assert json.loads(args[1]['data']) == expected_payload + assert args[1]['headers'] == {'Content-Type': 'application/json'} + class ContainerTest(BaseAPIClientTest): def test_list_containers(self):