Fix leaky tests

It was mocking self.client but relying on the call to
utils.create_host_config which was not mocked. So now that function
has moved to also be on self.client we need to redefine the test
boundary, up to where we would call docker-py, not the result of
docker-py.

Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
This commit is contained in:
Mazz Mosley 2015-09-17 15:33:58 +01:00
parent 6f6c04b5c9
commit 39ba2c5a7c
2 changed files with 14 additions and 9 deletions

View File

@ -144,8 +144,11 @@ class CLITestCase(unittest.TestCase):
'--rm': None, '--rm': None,
'--name': None, '--name': None,
}) })
_, _, call_kwargs = mock_client.create_container.mock_calls[0]
self.assertEquals(call_kwargs['host_config']['RestartPolicy']['Name'], 'always') self.assertEquals(
mock_client.create_host_config.call_args[1]['restart_policy']['Name'],
'always'
)
command = TopLevelCommand() command = TopLevelCommand()
mock_client = mock.create_autospec(docker.Client) mock_client = mock.create_autospec(docker.Client)
@ -170,8 +173,10 @@ class CLITestCase(unittest.TestCase):
'--rm': True, '--rm': True,
'--name': None, '--name': None,
}) })
_, _, call_kwargs = mock_client.create_container.mock_calls[0]
self.assertFalse('RestartPolicy' in call_kwargs['host_config']) self.assertFalse(
mock_client.create_host_config.call_args[1].get('restart_policy')
)
def test_command_manula_and_service_ports_together(self): def test_command_manula_and_service_ports_together(self):
command = TopLevelCommand() command = TopLevelCommand()

View File

@ -543,13 +543,13 @@ class ServiceVolumesTest(unittest.TestCase):
} }
} }
create_options = service._get_container_create_options( service._get_container_create_options(
override_options={}, override_options={},
number=1, number=1,
) )
self.assertEqual( self.assertEqual(
set(create_options['host_config']['Binds']), set(self.mock_client.create_host_config.call_args[1]['binds']),
set([ set([
'/host/path:/data1:rw', '/host/path:/data1:rw',
'/host/path:/data2:rw', '/host/path:/data2:rw',
@ -581,14 +581,14 @@ class ServiceVolumesTest(unittest.TestCase):
}, },
} }
create_options = service._get_container_create_options( service._get_container_create_options(
override_options={}, override_options={},
number=1, number=1,
previous_container=Container(self.mock_client, {'Id': '123123123'}), previous_container=Container(self.mock_client, {'Id': '123123123'}),
) )
self.assertEqual( self.assertEqual(
create_options['host_config']['Binds'], self.mock_client.create_host_config.call_args[1]['binds'],
['/mnt/sda1/host/path:/data:rw'], ['/mnt/sda1/host/path:/data:rw'],
) )
@ -613,4 +613,4 @@ class ServiceVolumesTest(unittest.TestCase):
).create_container() ).create_container()
self.assertEqual(len(create_calls), 1) self.assertEqual(len(create_calls), 1)
self.assertEqual(create_calls[0][1]['host_config']['Binds'], volumes) self.assertEqual(self.mock_client.create_host_config.call_args[1]['binds'], volumes)