summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoffrey F <joffrey@docker.com>2015-02-26 17:39:44 -0800
committerJoffrey F <joffrey@docker.com>2015-02-26 17:39:44 -0800
commite255c10f572880d21929b5525d498d8643f4932c (patch)
tree50cae4817c462de28ff605a938e964b47e3bcab4
parent5ce02b9f141c2ebe524946f2daeb518b86ce2efc (diff)
downloaddocker-py-e255c10f572880d21929b5525d498d8643f4932c.tar.gz
Ensure integration tests work with LXC exec driver
-rw-r--r--tests/integration_test.py20
1 files changed, 16 insertions, 4 deletions
diff --git a/tests/integration_test.py b/tests/integration_test.py
index 869d61e..9c9d253 100644
--- a/tests/integration_test.py
+++ b/tests/integration_test.py
@@ -32,6 +32,7 @@ from test import Cleanup
# export; history; import_image; insert; port; push; tag; get; load; stats;
DEFAULT_BASE_URL = os.environ.get('DOCKER_HOST')
+EXEC_DRIVER_IS_NATIVE = True
warnings.simplefilter('error')
create_host_config = docker.utils.create_host_config
@@ -312,6 +313,7 @@ class TestStartContainerWithRoBinds(BaseTestCase):
self.assertFalse(inspect_data['VolumesRW'][mount_dest])
+@unittest.skipIf(not EXEC_DRIVER_IS_NATIVE)
class TestCreateContainerReadOnlyFs(BaseTestCase):
def runTest(self):
ctnr = self.client.create_container(
@@ -325,6 +327,7 @@ class TestCreateContainerReadOnlyFs(BaseTestCase):
self.assertNotEqual(res, 0)
+@unittest.skipIf(not EXEC_DRIVER_IS_NATIVE)
class TestStartContainerReadOnlyFs(BaseTestCase):
def runTest(self):
# Presumably a bug in 1.5.0
@@ -581,7 +584,8 @@ class TestStop(BaseTestCase):
self.assertIn('State', container_info)
state = container_info['State']
self.assertIn('ExitCode', state)
- self.assertNotEqual(state['ExitCode'], 0)
+ if EXEC_DRIVER_IS_NATIVE:
+ self.assertNotEqual(state['ExitCode'], 0)
self.assertIn('Running', state)
self.assertEqual(state['Running'], False)
@@ -598,7 +602,8 @@ class TestStopWithDictInsteadOfId(BaseTestCase):
self.assertIn('State', container_info)
state = container_info['State']
self.assertIn('ExitCode', state)
- self.assertNotEqual(state['ExitCode'], 0)
+ if EXEC_DRIVER_IS_NATIVE:
+ self.assertNotEqual(state['ExitCode'], 0)
self.assertIn('Running', state)
self.assertEqual(state['Running'], False)
@@ -614,7 +619,8 @@ class TestKill(BaseTestCase):
self.assertIn('State', container_info)
state = container_info['State']
self.assertIn('ExitCode', state)
- self.assertNotEqual(state['ExitCode'], 0)
+ if EXEC_DRIVER_IS_NATIVE:
+ self.assertNotEqual(state['ExitCode'], 0)
self.assertIn('Running', state)
self.assertEqual(state['Running'], False)
@@ -630,7 +636,8 @@ class TestKillWithDictInsteadOfId(BaseTestCase):
self.assertIn('State', container_info)
state = container_info['State']
self.assertIn('ExitCode', state)
- self.assertNotEqual(state['ExitCode'], 0)
+ if EXEC_DRIVER_IS_NATIVE:
+ self.assertNotEqual(state['ExitCode'], 0)
self.assertIn('Running', state)
self.assertEqual(state['Running'], False)
@@ -978,6 +985,7 @@ class TestRestartingContainer(BaseTestCase):
self.client.remove_container(id, force=True)
+@unittest.skipIf(not EXEC_DRIVER_IS_NATIVE)
class TestExecuteCommand(BaseTestCase):
def runTest(self):
container = self.client.create_container('busybox', 'cat',
@@ -991,6 +999,7 @@ class TestExecuteCommand(BaseTestCase):
self.assertEqual(res, expected)
+@unittest.skipIf(not EXEC_DRIVER_IS_NATIVE)
class TestExecuteCommandString(BaseTestCase):
def runTest(self):
container = self.client.create_container('busybox', 'cat',
@@ -1004,6 +1013,7 @@ class TestExecuteCommandString(BaseTestCase):
self.assertEqual(res, expected)
+@unittest.skipIf(not EXEC_DRIVER_IS_NATIVE)
class TestExecuteCommandStreaming(BaseTestCase):
def runTest(self):
container = self.client.create_container('busybox', 'cat',
@@ -1458,5 +1468,7 @@ class TestRegressions(unittest.TestCase):
if __name__ == '__main__':
c = docker.Client(base_url=DEFAULT_BASE_URL)
c.pull('busybox')
+ exec_driver = c.info()['ExecutionDriver']
+ EXEC_DRIVER_IS_NATIVE = exec_driver.startswith('native')
c.close()
unittest.main()