Merge pull request #509 from docker/lxc_driver_test_compat

Lxc driver test compat
This commit is contained in:
Joffrey F 2015-02-27 11:48:36 -08:00
commit 91985b2397
1 changed files with 16 additions and 4 deletions

View File

@ -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, 'Exec driver not 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, 'Exec driver not native')
class TestStartContainerReadOnlyFs(BaseTestCase):
def runTest(self):
# Presumably a bug in 1.5.0
@ -585,7 +588,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)
@ -602,7 +606,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)
@ -618,7 +623,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)
@ -634,7 +640,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)
@ -982,6 +989,7 @@ class TestRestartingContainer(BaseTestCase):
self.client.remove_container(id, force=True)
@unittest.skipIf(not EXEC_DRIVER_IS_NATIVE, 'Exec driver not native')
class TestExecuteCommand(BaseTestCase):
def runTest(self):
container = self.client.create_container('busybox', 'cat',
@ -995,6 +1003,7 @@ class TestExecuteCommand(BaseTestCase):
self.assertEqual(res, expected)
@unittest.skipIf(not EXEC_DRIVER_IS_NATIVE, 'Exec driver not native')
class TestExecuteCommandString(BaseTestCase):
def runTest(self):
container = self.client.create_container('busybox', 'cat',
@ -1008,6 +1017,7 @@ class TestExecuteCommandString(BaseTestCase):
self.assertEqual(res, expected)
@unittest.skipIf(not EXEC_DRIVER_IS_NATIVE, 'Exec driver not native')
class TestExecuteCommandStreaming(BaseTestCase):
def runTest(self):
container = self.client.create_container('busybox', 'cat',
@ -1462,5 +1472,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()