From 6a3d1d06b5fc4eae7d09bf6c6511651281325a6d Mon Sep 17 00:00:00 2001 From: Aanand Prasad Date: Tue, 4 Mar 2014 17:58:42 +0000 Subject: [PATCH] Check NetworkSettings.Ports instead of HostConfig.PortBindings in tests The latter appears to be unreliable. --- tests/service_test.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/tests/service_test.py b/tests/service_test.py index 63a31df5..458de676 100644 --- a/tests/service_test.py +++ b/tests/service_test.py @@ -209,25 +209,25 @@ class ServiceTest(DockerClientTestCase): def test_start_container_creates_ports(self): service = self.create_service('web', ports=[8000]) container = service.start_container().inspect() - self.assertEqual(list(container['HostConfig']['PortBindings'].keys()), ['8000/tcp']) - self.assertNotEqual(container['HostConfig']['PortBindings']['8000/tcp'][0]['HostPort'], '8000') + self.assertEqual(list(container['NetworkSettings']['Ports'].keys()), ['8000/tcp']) + self.assertNotEqual(container['NetworkSettings']['Ports']['8000/tcp'][0]['HostPort'], '8000') def test_start_container_creates_port_with_explicit_protocol(self): service = self.create_service('web', ports=['8000/udp']) container = service.start_container().inspect() - self.assertEqual(list(container['HostConfig']['PortBindings'].keys()), ['8000/udp']) + self.assertEqual(list(container['NetworkSettings']['Ports'].keys()), ['8000/udp']) def test_start_container_creates_fixed_external_ports(self): service = self.create_service('web', ports=['8000:8000']) container = service.start_container().inspect() - self.assertIn('8000/tcp', container['HostConfig']['PortBindings']) - self.assertEqual(container['HostConfig']['PortBindings']['8000/tcp'][0]['HostPort'], '8000') + self.assertIn('8000/tcp', container['NetworkSettings']['Ports']) + self.assertEqual(container['NetworkSettings']['Ports']['8000/tcp'][0]['HostPort'], '8000') def test_start_container_creates_fixed_external_ports_when_it_is_different_to_internal_port(self): service = self.create_service('web', ports=['8001:8000']) container = service.start_container().inspect() - self.assertIn('8000/tcp', container['HostConfig']['PortBindings']) - self.assertEqual(container['HostConfig']['PortBindings']['8000/tcp'][0]['HostPort'], '8001') + self.assertIn('8000/tcp', container['NetworkSettings']['Ports']) + self.assertEqual(container['NetworkSettings']['Ports']['8000/tcp'][0]['HostPort'], '8001') def test_scale(self): service = self.create_service('web')