Skip to content

Commit e255c10

Browse files
committed
Ensure integration tests work with LXC exec driver
1 parent 5ce02b9 commit e255c10

File tree

1 file changed

+16
-4
lines changed

1 file changed

+16
-4
lines changed

tests/integration_test.py

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
# export; history; import_image; insert; port; push; tag; get; load; stats;
3333

3434
DEFAULT_BASE_URL = os.environ.get('DOCKER_HOST')
35+
EXEC_DRIVER_IS_NATIVE = True
3536

3637
warnings.simplefilter('error')
3738
create_host_config = docker.utils.create_host_config
@@ -312,6 +313,7 @@ def runTest(self):
312313
self.assertFalse(inspect_data['VolumesRW'][mount_dest])
313314

314315

316+
@unittest.skipIf(not EXEC_DRIVER_IS_NATIVE)
315317
class TestCreateContainerReadOnlyFs(BaseTestCase):
316318
def runTest(self):
317319
ctnr = self.client.create_container(
@@ -325,6 +327,7 @@ def runTest(self):
325327
self.assertNotEqual(res, 0)
326328

327329

330+
@unittest.skipIf(not EXEC_DRIVER_IS_NATIVE)
328331
class TestStartContainerReadOnlyFs(BaseTestCase):
329332
def runTest(self):
330333
# Presumably a bug in 1.5.0
@@ -581,7 +584,8 @@ def runTest(self):
581584
self.assertIn('State', container_info)
582585
state = container_info['State']
583586
self.assertIn('ExitCode', state)
584-
self.assertNotEqual(state['ExitCode'], 0)
587+
if EXEC_DRIVER_IS_NATIVE:
588+
self.assertNotEqual(state['ExitCode'], 0)
585589
self.assertIn('Running', state)
586590
self.assertEqual(state['Running'], False)
587591

@@ -598,7 +602,8 @@ def runTest(self):
598602
self.assertIn('State', container_info)
599603
state = container_info['State']
600604
self.assertIn('ExitCode', state)
601-
self.assertNotEqual(state['ExitCode'], 0)
605+
if EXEC_DRIVER_IS_NATIVE:
606+
self.assertNotEqual(state['ExitCode'], 0)
602607
self.assertIn('Running', state)
603608
self.assertEqual(state['Running'], False)
604609

@@ -614,7 +619,8 @@ def runTest(self):
614619
self.assertIn('State', container_info)
615620
state = container_info['State']
616621
self.assertIn('ExitCode', state)
617-
self.assertNotEqual(state['ExitCode'], 0)
622+
if EXEC_DRIVER_IS_NATIVE:
623+
self.assertNotEqual(state['ExitCode'], 0)
618624
self.assertIn('Running', state)
619625
self.assertEqual(state['Running'], False)
620626

@@ -630,7 +636,8 @@ def runTest(self):
630636
self.assertIn('State', container_info)
631637
state = container_info['State']
632638
self.assertIn('ExitCode', state)
633-
self.assertNotEqual(state['ExitCode'], 0)
639+
if EXEC_DRIVER_IS_NATIVE:
640+
self.assertNotEqual(state['ExitCode'], 0)
634641
self.assertIn('Running', state)
635642
self.assertEqual(state['Running'], False)
636643

@@ -978,6 +985,7 @@ def runTest(self):
978985
self.client.remove_container(id, force=True)
979986

980987

988+
@unittest.skipIf(not EXEC_DRIVER_IS_NATIVE)
981989
class TestExecuteCommand(BaseTestCase):
982990
def runTest(self):
983991
container = self.client.create_container('busybox', 'cat',
@@ -991,6 +999,7 @@ def runTest(self):
991999
self.assertEqual(res, expected)
9921000

9931001

1002+
@unittest.skipIf(not EXEC_DRIVER_IS_NATIVE)
9941003
class TestExecuteCommandString(BaseTestCase):
9951004
def runTest(self):
9961005
container = self.client.create_container('busybox', 'cat',
@@ -1004,6 +1013,7 @@ def runTest(self):
10041013
self.assertEqual(res, expected)
10051014

10061015

1016+
@unittest.skipIf(not EXEC_DRIVER_IS_NATIVE)
10071017
class TestExecuteCommandStreaming(BaseTestCase):
10081018
def runTest(self):
10091019
container = self.client.create_container('busybox', 'cat',
@@ -1458,5 +1468,7 @@ def test_443(self):
14581468
if __name__ == '__main__':
14591469
c = docker.Client(base_url=DEFAULT_BASE_URL)
14601470
c.pull('busybox')
1471+
exec_driver = c.info()['ExecutionDriver']
1472+
EXEC_DRIVER_IS_NATIVE = exec_driver.startswith('native')
14611473
c.close()
14621474
unittest.main()

0 commit comments

Comments
 (0)