diff options
author | d11wtq <chris@w3style.co.uk> | 2014-06-08 11:11:52 +0000 |
---|---|---|
committer | Chris Corbyn <chris@w3style.co.uk> | 2014-06-09 01:31:48 +0000 |
commit | a6c8319b5df7c353de12c87e0896087749159240 (patch) | |
tree | 30f8e7030b9052613a9296fc8125ff1b441d5d54 | |
parent | 5d92f12f8e33506c986efdf366371a372f3594bb (diff) |
Add integration tests for Service.recreate_containers() with keep_old
Signed-off-by: Chris Corbyn <chris@w3style.co.uk>
-rw-r--r-- | tests/integration/service_test.py | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/tests/integration/service_test.py b/tests/integration/service_test.py index 78ddbd85..8f4d3f79 100644 --- a/tests/integration/service_test.py +++ b/tests/integration/service_test.py @@ -132,6 +132,52 @@ class ServiceTest(DockerClientTestCase): self.assertNotEqual(old_container.id, new_container.id) self.assertRaises(APIError, lambda: self.client.inspect_container(intermediate_container.id)) + def test_recreate_containers_with_keep_old_running(self): + service = self.create_service( + 'db', + environment={'FOO': '1'}, + volumes=['/var/db'], + entrypoint=['ps'], + command=['ax'] + ) + old_container = service.create_container() + service.start_container(old_container) + + num_containers_before = len(self.client.containers(all=True)) + + tuples = service.recreate_containers(keep_old=True) + self.assertEqual(len(tuples), 1) + + intermediate_container = tuples[0][0] + new_container = tuples[0][1] + + self.assertIsNone(intermediate_container) + self.assertEqual(len(self.client.containers(all=True)), num_containers_before) + self.assertEqual(old_container.id, new_container.id) + + def test_recreate_containers_with_keep_old_stopped(self): + service = self.create_service( + 'db', + environment={'FOO': '1'}, + volumes=['/var/db'], + entrypoint=['ps'], + command=['ax'] + ) + old_container = service.create_container() + old_container.stop() + + num_containers_before = len(self.client.containers(all=True)) + + tuples = service.recreate_containers(keep_old=True) + self.assertEqual(len(tuples), 1) + + intermediate_container = tuples[0][0] + new_container = tuples[0][1] + + self.assertIsNone(intermediate_container) + self.assertEqual(len(self.client.containers(all=True)), num_containers_before) + self.assertEqual(old_container.id, new_container.id) + def test_start_container_passes_through_options(self): db = self.create_service('db') db.start_container(environment={'FOO': 'BAR'}) |