diff options
author | Joffrey F <joffrey@docker.com> | 2015-09-11 17:04:20 -0700 |
---|---|---|
committer | Joffrey F <joffrey@docker.com> | 2015-09-22 14:17:19 -0700 |
commit | d6a86e1d69aa39b47c774794f87199d5e18d687e (patch) | |
tree | 55832185931d0345251f496b3300cddff717b0e4 | |
parent | 8c270dfdf0dfe3d3768846742faa33862742150f (diff) | |
download | docker-py-d6a86e1d69aa39b47c774794f87199d5e18d687e.tar.gz |
Fix volumes tests for API version >= 1.20
Signed-off-by: Joffrey F <joffrey@docker.com>
-rw-r--r-- | tests/integration_test.py | 51 |
1 files changed, 38 insertions, 13 deletions
diff --git a/tests/integration_test.py b/tests/integration_test.py index f801627..c22fe1f 100644 --- a/tests/integration_test.py +++ b/tests/integration_test.py @@ -264,14 +264,25 @@ class TestCreateContainerWithBinds(BaseTestCase): if six.PY3: logs = logs.decode('utf-8') self.assertIn(self.filename, logs) - - # FIXME: format changes in API version >= 1.20 inspect_data = self.client.inspect_container(container) - self.assertEqual( - self.mount_origin, - inspect_data['Volumes'][self.mount_dest] - ) - self.assertTrue(inspect_data['VolumesRW'][self.mount_dest]) + if docker.utils.compare_version('1.20', self.client._version) < 0: + self.assertIn('Volumes', inspect_data) + self.assertIn(self.mount_dest, inspect_data['Volumes']) + self.assertEqual( + self.mount_origin, inspect_data['Volumes'][self.mount_dest] + ) + self.assertIn(self.mount_dest, inspect_data['VolumesRW']) + self.assertTrue(inspect_data['VolumesRW'][self.mount_dest]) + else: + self.assertIn('Mounts', inspect_data) + filtered = filter( + lambda x: x['Destination'] == self.mount_dest, + inspect_data['Mounts'] + ) + self.assertEqual(len(filtered), 1) + mount_data = filtered[0] + self.assertEqual(mount_data['Source'], self.mount_origin) + self.assertTrue(mount_data['RW']) def test_ro(self): container = self.run_with_volume( @@ -285,13 +296,26 @@ class TestCreateContainerWithBinds(BaseTestCase): logs = logs.decode('utf-8') self.assertIn(self.filename, logs) - # FIXME: format changes in API version >= 1.20 + self.assertIn(self.filename, logs) inspect_data = self.client.inspect_container(container) - self.assertEqual( - self.mount_origin, - inspect_data['Volumes'][self.mount_dest] - ) - self.assertFalse(inspect_data['VolumesRW'][self.mount_dest]) + if docker.utils.compare_version('1.20', self.client._version) < 0: + self.assertIn('Volumes', inspect_data) + self.assertIn(self.mount_dest, inspect_data['Volumes']) + self.assertEqual( + self.mount_origin, inspect_data['Volumes'][self.mount_dest] + ) + self.assertIn(self.mount_dest, inspect_data['VolumesRW']) + self.assertFalse(inspect_data['VolumesRW'][self.mount_dest]) + else: + self.assertIn('Mounts', inspect_data) + filtered = filter( + lambda x: x['Destination'] == self.mount_dest, + inspect_data['Mounts'] + ) + self.assertEqual(len(filtered), 1) + mount_data = filtered[0] + self.assertEqual(mount_data['Source'], self.mount_origin) + self.assertFalse(mount_data['RW']) @requires_api_version('1.20') @@ -325,6 +349,7 @@ class CreateContainerWithGroupAddTest(BaseTestCase): logs = self.client.logs(container) if six.PY3: logs = logs.decode('utf-8') + groups = logs.strip().split(' ') self.assertIn('1000', groups) self.assertIn('1001', groups) |