Kaydet (Commit) 595965eb authored tarafından Joffrey F's avatar Joffrey F

Adapt tests to new create_host_config usage

üst 4bd3c48e
...@@ -48,7 +48,6 @@ DEFAULT_TIMEOUT_SECONDS = docker.client.constants.DEFAULT_TIMEOUT_SECONDS ...@@ -48,7 +48,6 @@ DEFAULT_TIMEOUT_SECONDS = docker.client.constants.DEFAULT_TIMEOUT_SECONDS
warnings.simplefilter('error') warnings.simplefilter('error')
warnings.filterwarnings('error') warnings.filterwarnings('error')
create_host_config = docker.utils.create_host_config
def response(status_code=200, content='', headers=None, reason=None, elapsed=0, def response(status_code=200, content='', headers=None, reason=None, elapsed=0,
...@@ -495,7 +494,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -495,7 +494,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
def test_create_container_with_cgroup_parent(self): def test_create_container_with_cgroup_parent(self):
try: try:
self.client.create_container( self.client.create_container(
'busybox', 'ls', host_config=create_host_config( 'busybox', 'ls', host_config=self.client.create_host_config(
cgroup_parent='test' cgroup_parent='test'
) )
) )
...@@ -604,7 +603,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -604,7 +603,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
def test_create_container_with_mem_limit_as_int(self): def test_create_container_with_mem_limit_as_int(self):
try: try:
self.client.create_container( self.client.create_container(
'busybox', 'true', host_config=create_host_config( 'busybox', 'true', host_config=self.client.create_host_config(
mem_limit=128.0 mem_limit=128.0
) )
) )
...@@ -618,7 +617,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -618,7 +617,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
def test_create_container_with_mem_limit_as_string(self): def test_create_container_with_mem_limit_as_string(self):
try: try:
self.client.create_container( self.client.create_container(
'busybox', 'true', host_config=create_host_config( 'busybox', 'true', host_config=self.client.create_host_config(
mem_limit='128' mem_limit='128'
) )
) )
...@@ -632,7 +631,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -632,7 +631,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
def test_create_container_with_mem_limit_as_string_with_k_unit(self): def test_create_container_with_mem_limit_as_string_with_k_unit(self):
try: try:
self.client.create_container( self.client.create_container(
'busybox', 'true', host_config=create_host_config( 'busybox', 'true', host_config=self.client.create_host_config(
mem_limit='128k' mem_limit='128k'
) )
) )
...@@ -646,7 +645,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -646,7 +645,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
def test_create_container_with_mem_limit_as_string_with_m_unit(self): def test_create_container_with_mem_limit_as_string_with_m_unit(self):
try: try:
self.client.create_container( self.client.create_container(
'busybox', 'true', host_config=create_host_config( 'busybox', 'true', host_config=self.client.create_host_config(
mem_limit='128m' mem_limit='128m'
) )
) )
...@@ -661,7 +660,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -661,7 +660,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
def test_create_container_with_mem_limit_as_string_with_g_unit(self): def test_create_container_with_mem_limit_as_string_with_g_unit(self):
try: try:
self.client.create_container( self.client.create_container(
'busybox', 'true', host_config=create_host_config( 'busybox', 'true', host_config=self.client.create_host_config(
mem_limit='128g' mem_limit='128g'
) )
) )
...@@ -676,11 +675,13 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -676,11 +675,13 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
def test_create_container_with_mem_limit_as_string_with_wrong_value(self): def test_create_container_with_mem_limit_as_string_with_wrong_value(self):
self.assertRaises( self.assertRaises(
docker.errors.DockerException, create_host_config, mem_limit='128p' docker.errors.DockerException,
self.client.create_host_config, mem_limit='128p'
) )
self.assertRaises( self.assertRaises(
docker.errors.DockerException, create_host_config, mem_limit='1f28' docker.errors.DockerException,
self.client.create_host_config, mem_limit='1f28'
) )
def test_start_container(self): def test_start_container(self):
...@@ -726,7 +727,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -726,7 +727,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
def test_create_container_with_lxc_conf(self): def test_create_container_with_lxc_conf(self):
try: try:
self.client.create_container( self.client.create_container(
'busybox', 'true', host_config=create_host_config( 'busybox', 'true', host_config=self.client.create_host_config(
lxc_conf={'lxc.conf.k': 'lxc.conf.value'} lxc_conf={'lxc.conf.k': 'lxc.conf.value'}
) )
) )
...@@ -738,7 +739,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -738,7 +739,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
url_prefix + 'containers/create' url_prefix + 'containers/create'
) )
expected_payload = self.base_create_payload() expected_payload = self.base_create_payload()
expected_payload['HostConfig'] = create_host_config() expected_payload['HostConfig'] = self.client.create_host_config()
expected_payload['HostConfig']['LxcConf'] = [ expected_payload['HostConfig']['LxcConf'] = [
{"Value": "lxc.conf.value", "Key": "lxc.conf.k"} {"Value": "lxc.conf.value", "Key": "lxc.conf.k"}
] ]
...@@ -756,7 +757,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -756,7 +757,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
def test_create_container_with_lxc_conf_compat(self): def test_create_container_with_lxc_conf_compat(self):
try: try:
self.client.create_container( self.client.create_container(
'busybox', 'true', host_config=create_host_config( 'busybox', 'true', host_config=self.client.create_host_config(
lxc_conf=[{'Key': 'lxc.conf.k', 'Value': 'lxc.conf.value'}] lxc_conf=[{'Key': 'lxc.conf.k', 'Value': 'lxc.conf.value'}]
) )
) )
...@@ -766,7 +767,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -766,7 +767,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
args = fake_request.call_args args = fake_request.call_args
self.assertEqual(args[0][0], url_prefix + 'containers/create') self.assertEqual(args[0][0], url_prefix + 'containers/create')
expected_payload = self.base_create_payload() expected_payload = self.base_create_payload()
expected_payload['HostConfig'] = create_host_config() expected_payload['HostConfig'] = self.client.create_host_config()
expected_payload['HostConfig']['LxcConf'] = [ expected_payload['HostConfig']['LxcConf'] = [
{"Value": "lxc.conf.value", "Key": "lxc.conf.k"} {"Value": "lxc.conf.value", "Key": "lxc.conf.k"}
] ]
...@@ -784,7 +785,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -784,7 +785,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
mount_dest = '/mnt' mount_dest = '/mnt'
mount_origin = '/tmp' mount_origin = '/tmp'
self.client.create_container( self.client.create_container(
'busybox', 'true', host_config=create_host_config( 'busybox', 'true', host_config=self.client.create_host_config(
binds={mount_origin: { binds={mount_origin: {
"bind": mount_dest, "bind": mount_dest,
"ro": True "ro": True
...@@ -798,7 +799,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -798,7 +799,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
self.assertEqual(args[0][0], url_prefix + self.assertEqual(args[0][0], url_prefix +
'containers/create') 'containers/create')
expected_payload = self.base_create_payload() expected_payload = self.base_create_payload()
expected_payload['HostConfig'] = create_host_config() expected_payload['HostConfig'] = self.client.create_host_config()
expected_payload['HostConfig']['Binds'] = ["/tmp:/mnt:ro"] expected_payload['HostConfig']['Binds'] = ["/tmp:/mnt:ro"]
self.assertEqual(json.loads(args[1]['data']), expected_payload) self.assertEqual(json.loads(args[1]['data']), expected_payload)
self.assertEqual(args[1]['headers'], self.assertEqual(args[1]['headers'],
...@@ -813,7 +814,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -813,7 +814,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
mount_dest = '/mnt' mount_dest = '/mnt'
mount_origin = '/tmp' mount_origin = '/tmp'
self.client.create_container( self.client.create_container(
'busybox', 'true', host_config=create_host_config( 'busybox', 'true', host_config=self.client.create_host_config(
binds={mount_origin: { binds={mount_origin: {
"bind": mount_dest, "bind": mount_dest,
"ro": False "ro": False
...@@ -827,7 +828,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -827,7 +828,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
self.assertEqual(args[0][0], url_prefix + self.assertEqual(args[0][0], url_prefix +
'containers/create') 'containers/create')
expected_payload = self.base_create_payload() expected_payload = self.base_create_payload()
expected_payload['HostConfig'] = create_host_config() expected_payload['HostConfig'] = self.client.create_host_config()
expected_payload['HostConfig']['Binds'] = ["/tmp:/mnt:rw"] expected_payload['HostConfig']['Binds'] = ["/tmp:/mnt:rw"]
self.assertEqual(json.loads(args[1]['data']), expected_payload) self.assertEqual(json.loads(args[1]['data']), expected_payload)
self.assertEqual(args[1]['headers'], self.assertEqual(args[1]['headers'],
...@@ -842,7 +843,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -842,7 +843,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
mount_dest = '/mnt' mount_dest = '/mnt'
mount_origin = '/tmp' mount_origin = '/tmp'
self.client.create_container( self.client.create_container(
'busybox', 'true', host_config=create_host_config( 'busybox', 'true', host_config=self.client.create_host_config(
binds={mount_origin: { binds={mount_origin: {
"bind": mount_dest, "bind": mount_dest,
"mode": "z", "mode": "z",
...@@ -856,7 +857,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -856,7 +857,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
self.assertEqual(args[0][0], url_prefix + self.assertEqual(args[0][0], url_prefix +
'containers/create') 'containers/create')
expected_payload = self.base_create_payload() expected_payload = self.base_create_payload()
expected_payload['HostConfig'] = create_host_config() expected_payload['HostConfig'] = self.client.create_host_config()
expected_payload['HostConfig']['Binds'] = ["/tmp:/mnt:z"] expected_payload['HostConfig']['Binds'] = ["/tmp:/mnt:z"]
self.assertEqual(json.loads(args[1]['data']), expected_payload) self.assertEqual(json.loads(args[1]['data']), expected_payload)
self.assertEqual(args[1]['headers'], self.assertEqual(args[1]['headers'],
...@@ -871,7 +872,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -871,7 +872,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
mount_dest = '/mnt' mount_dest = '/mnt'
mount_origin = '/tmp' mount_origin = '/tmp'
self.client.create_container( self.client.create_container(
'busybox', 'true', host_config=create_host_config( 'busybox', 'true', host_config=self.client.create_host_config(
binds={mount_origin: { binds={mount_origin: {
"bind": mount_dest, "bind": mount_dest,
"mode": "z", "mode": "z",
...@@ -887,7 +888,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -887,7 +888,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
def test_create_container_with_binds_list(self): def test_create_container_with_binds_list(self):
try: try:
self.client.create_container( self.client.create_container(
'busybox', 'true', host_config=create_host_config( 'busybox', 'true', host_config=self.client.create_host_config(
binds=[ binds=[
"/tmp:/mnt/1:ro", "/tmp:/mnt/1:ro",
"/tmp:/mnt/2", "/tmp:/mnt/2",
...@@ -901,7 +902,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -901,7 +902,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
self.assertEqual(args[0][0], url_prefix + self.assertEqual(args[0][0], url_prefix +
'containers/create') 'containers/create')
expected_payload = self.base_create_payload() expected_payload = self.base_create_payload()
expected_payload['HostConfig'] = create_host_config() expected_payload['HostConfig'] = self.client.create_host_config()
expected_payload['HostConfig']['Binds'] = [ expected_payload['HostConfig']['Binds'] = [
"/tmp:/mnt/1:ro", "/tmp:/mnt/1:ro",
"/tmp:/mnt/2", "/tmp:/mnt/2",
...@@ -918,7 +919,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -918,7 +919,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
self.maxDiff = None self.maxDiff = None
try: try:
self.client.create_container( self.client.create_container(
'busybox', 'true', host_config=create_host_config( 'busybox', 'true', host_config=self.client.create_host_config(
port_bindings={ port_bindings={
1111: None, 1111: None,
2222: 2222, 2222: 2222,
...@@ -987,7 +988,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -987,7 +988,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
link_path = 'path' link_path = 'path'
alias = 'alias' alias = 'alias'
self.client.create_container( self.client.create_container(
'busybox', 'true', host_config=create_host_config( 'busybox', 'true', host_config=self.client.create_host_config(
links={link_path: alias} links={link_path: alias}
) )
) )
...@@ -999,7 +1000,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -999,7 +1000,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
args[0][0], url_prefix + 'containers/create' args[0][0], url_prefix + 'containers/create'
) )
expected_payload = self.base_create_payload() expected_payload = self.base_create_payload()
expected_payload['HostConfig'] = create_host_config() expected_payload['HostConfig'] = self.client.create_host_config()
expected_payload['HostConfig']['Links'] = ['path:alias'] expected_payload['HostConfig']['Links'] = ['path:alias']
self.assertEqual(json.loads(args[1]['data']), expected_payload) self.assertEqual(json.loads(args[1]['data']), expected_payload)
...@@ -1012,7 +1013,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -1012,7 +1013,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
link_path = 'path' link_path = 'path'
alias = 'alias' alias = 'alias'
self.client.create_container( self.client.create_container(
'busybox', 'true', host_config=create_host_config( 'busybox', 'true', host_config=self.client.create_host_config(
links={ links={
link_path + '1': alias + '1', link_path + '1': alias + '1',
link_path + '2': alias + '2' link_path + '2': alias + '2'
...@@ -1025,7 +1026,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -1025,7 +1026,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
args = fake_request.call_args args = fake_request.call_args
self.assertEqual(args[0][0], url_prefix + 'containers/create') self.assertEqual(args[0][0], url_prefix + 'containers/create')
expected_payload = self.base_create_payload() expected_payload = self.base_create_payload()
expected_payload['HostConfig'] = create_host_config() expected_payload['HostConfig'] = self.client.create_host_config()
expected_payload['HostConfig']['Links'] = [ expected_payload['HostConfig']['Links'] = [
'path1:alias1', 'path2:alias2' 'path1:alias1', 'path2:alias2'
] ]
...@@ -1039,7 +1040,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -1039,7 +1040,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
link_path = 'path' link_path = 'path'
alias = 'alias' alias = 'alias'
self.client.create_container( self.client.create_container(
'busybox', 'true', host_config=create_host_config( 'busybox', 'true', host_config=self.client.create_host_config(
links=[(link_path, alias)] links=[(link_path, alias)]
) )
) )
...@@ -1049,7 +1050,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -1049,7 +1050,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
args = fake_request.call_args args = fake_request.call_args
self.assertEqual(args[0][0], url_prefix + 'containers/create') self.assertEqual(args[0][0], url_prefix + 'containers/create')
expected_payload = self.base_create_payload() expected_payload = self.base_create_payload()
expected_payload['HostConfig'] = create_host_config() expected_payload['HostConfig'] = self.client.create_host_config()
expected_payload['HostConfig']['Links'] = ['path:alias'] expected_payload['HostConfig']['Links'] = ['path:alias']
self.assertEqual(json.loads(args[1]['data']), expected_payload) self.assertEqual(json.loads(args[1]['data']), expected_payload)
...@@ -1061,13 +1062,13 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -1061,13 +1062,13 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
try: try:
self.client.create_container( self.client.create_container(
'busybox', 'true', 'busybox', 'true',
host_config=create_host_config(privileged=True) host_config=self.client.create_host_config(privileged=True)
) )
except Exception as e: except Exception as e:
self.fail('Command should not raise exception: {0}'.format(e)) self.fail('Command should not raise exception: {0}'.format(e))
expected_payload = self.base_create_payload() expected_payload = self.base_create_payload()
expected_payload['HostConfig'] = create_host_config() expected_payload['HostConfig'] = self.client.create_host_config()
expected_payload['HostConfig']['Privileged'] = True expected_payload['HostConfig']['Privileged'] = True
args = fake_request.call_args args = fake_request.call_args
self.assertEqual(args[0][0], url_prefix + 'containers/create') self.assertEqual(args[0][0], url_prefix + 'containers/create')
...@@ -1306,7 +1307,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -1306,7 +1307,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
def test_create_container_with_restart_policy(self): def test_create_container_with_restart_policy(self):
try: try:
self.client.create_container( self.client.create_container(
'busybox', 'true', host_config=create_host_config( 'busybox', 'true', host_config=self.client.create_host_config(
restart_policy={ restart_policy={
"Name": "always", "Name": "always",
"MaximumRetryCount": 0 "MaximumRetryCount": 0
...@@ -1319,7 +1320,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -1319,7 +1320,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
self.assertEqual(args[0][0], url_prefix + 'containers/create') self.assertEqual(args[0][0], url_prefix + 'containers/create')
expected_payload = self.base_create_payload() expected_payload = self.base_create_payload()
expected_payload['HostConfig'] = create_host_config() expected_payload['HostConfig'] = self.client.create_host_config()
expected_payload['HostConfig']['RestartPolicy'] = { expected_payload['HostConfig']['RestartPolicy'] = {
"MaximumRetryCount": 0, "Name": "always" "MaximumRetryCount": 0, "Name": "always"
} }
...@@ -1336,14 +1337,14 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -1336,14 +1337,14 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
try: try:
self.client.create_container( self.client.create_container(
'busybox', 'true', 'busybox', 'true',
host_config=create_host_config(cap_add=['MKNOD']) host_config=self.client.create_host_config(cap_add=['MKNOD'])
) )
except Exception as e: except Exception as e:
self.fail('Command should not raise exception: {0}'.format(e)) self.fail('Command should not raise exception: {0}'.format(e))
args = fake_request.call_args args = fake_request.call_args
self.assertEqual(args[0][0], url_prefix + 'containers/create') self.assertEqual(args[0][0], url_prefix + 'containers/create')
expected_payload = self.base_create_payload() expected_payload = self.base_create_payload()
expected_payload['HostConfig'] = create_host_config() expected_payload['HostConfig'] = self.client.create_host_config()
expected_payload['HostConfig']['CapAdd'] = ['MKNOD'] expected_payload['HostConfig']['CapAdd'] = ['MKNOD']
self.assertEqual(json.loads(args[1]['data']), expected_payload) self.assertEqual(json.loads(args[1]['data']), expected_payload)
self.assertEqual( self.assertEqual(
...@@ -1357,14 +1358,14 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -1357,14 +1358,14 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
try: try:
self.client.create_container( self.client.create_container(
'busybox', 'true', 'busybox', 'true',
host_config=create_host_config(cap_drop=['MKNOD']) host_config=self.client.create_host_config(cap_drop=['MKNOD'])
) )
except Exception as e: except Exception as e:
self.fail('Command should not raise exception: {0}'.format(e)) self.fail('Command should not raise exception: {0}'.format(e))
args = fake_request.call_args args = fake_request.call_args
self.assertEqual(args[0][0], url_prefix + 'containers/create') self.assertEqual(args[0][0], url_prefix + 'containers/create')
expected_payload = self.base_create_payload() expected_payload = self.base_create_payload()
expected_payload['HostConfig'] = create_host_config() expected_payload['HostConfig'] = self.client.create_host_config()
expected_payload['HostConfig']['CapDrop'] = ['MKNOD'] expected_payload['HostConfig']['CapDrop'] = ['MKNOD']
self.assertEqual(json.loads(args[1]['data']), expected_payload) self.assertEqual(json.loads(args[1]['data']), expected_payload)
self.assertEqual( self.assertEqual(
...@@ -1377,7 +1378,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -1377,7 +1378,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
def test_create_container_with_devices(self): def test_create_container_with_devices(self):
try: try:
self.client.create_container( self.client.create_container(
'busybox', 'true', host_config=create_host_config( 'busybox', 'true', host_config=self.client.create_host_config(
devices=['/dev/sda:/dev/xvda:rwm', devices=['/dev/sda:/dev/xvda:rwm',
'/dev/sdb:/dev/xvdb', '/dev/sdb:/dev/xvdb',
'/dev/sdc'] '/dev/sdc']
...@@ -1388,7 +1389,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -1388,7 +1389,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
args = fake_request.call_args args = fake_request.call_args
self.assertEqual(args[0][0], url_prefix + 'containers/create') self.assertEqual(args[0][0], url_prefix + 'containers/create')
expected_payload = self.base_create_payload() expected_payload = self.base_create_payload()
expected_payload['HostConfig'] = create_host_config() expected_payload['HostConfig'] = self.client.create_host_config()
expected_payload['HostConfig']['Devices'] = [ expected_payload['HostConfig']['Devices'] = [
{'CgroupPermissions': 'rwm', {'CgroupPermissions': 'rwm',
'PathInContainer': '/dev/xvda', 'PathInContainer': '/dev/xvda',
...@@ -1462,7 +1463,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -1462,7 +1463,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
volume_name = 'name' volume_name = 'name'
self.client.create_container( self.client.create_container(
'busybox', 'true', 'busybox', 'true',
host_config=create_host_config( host_config=self.client.create_host_config(
binds={volume_name: { binds={volume_name: {
"bind": mount_dest, "bind": mount_dest,
"ro": False "ro": False
...@@ -1477,7 +1478,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -1477,7 +1478,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
'containers/create') 'containers/create')
expected_payload = self.base_create_payload() expected_payload = self.base_create_payload()
expected_payload['VolumeDriver'] = 'foodriver' expected_payload['VolumeDriver'] = 'foodriver'
expected_payload['HostConfig'] = create_host_config() expected_payload['HostConfig'] = self.client.create_host_config()
expected_payload['HostConfig']['Binds'] = ["name:/mnt:rw"] expected_payload['HostConfig']['Binds'] = ["name:/mnt:rw"]
self.assertEqual(json.loads(args[1]['data']), expected_payload) self.assertEqual(json.loads(args[1]['data']), expected_payload)
self.assertEqual(args[1]['headers'], self.assertEqual(args[1]['headers'],
...@@ -2536,12 +2537,12 @@ class DockerClientTest(Cleanup, base.BaseTestCase): ...@@ -2536,12 +2537,12 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
def test_create_host_config_secopt(self): def test_create_host_config_secopt(self):
security_opt = ['apparmor:test_profile'] security_opt = ['apparmor:test_profile']
result = create_host_config(security_opt=security_opt) result = self.client.create_host_config(security_opt=security_opt)
self.assertIn('SecurityOpt', result) self.assertIn('SecurityOpt', result)
self.assertEqual(result['SecurityOpt'], security_opt) self.assertEqual(result['SecurityOpt'], security_opt)
self.assertRaises( self.assertRaises(
docker.errors.DockerException, create_host_config, docker.errors.DockerException, self.client.create_host_config,
security_opt='wrong' security_opt='wrong'
) )
......
...@@ -4,6 +4,7 @@ import unittest ...@@ -4,6 +4,7 @@ import unittest
import tempfile import tempfile
from docker.client import Client from docker.client import Client
from docker.constants import DEFAULT_DOCKER_API_VERSION
from docker.errors import DockerException from docker.errors import DockerException
from docker.utils import ( from docker.utils import (
parse_repository_tag, parse_host, convert_filters, kwargs_from_env, parse_repository_tag, parse_host, convert_filters, kwargs_from_env,
...@@ -144,12 +145,16 @@ class UtilsTest(base.BaseTestCase): ...@@ -144,12 +145,16 @@ class UtilsTest(base.BaseTestCase):
self.assertEqual(convert_filters(filters), expected) self.assertEqual(convert_filters(filters), expected)
def test_create_empty_host_config(self): def test_create_empty_host_config(self):
empty_config = create_host_config(network_mode='') empty_config = create_host_config(
network_mode='', version=DEFAULT_DOCKER_API_VERSION
)
self.assertEqual(empty_config, {}) self.assertEqual(empty_config, {})
def test_create_host_config_dict_ulimit(self): def test_create_host_config_dict_ulimit(self):
ulimit_dct = {'name': 'nofile', 'soft': 8096} ulimit_dct = {'name': 'nofile', 'soft': 8096}
config = create_host_config(ulimits=[ulimit_dct]) config = create_host_config(
ulimits=[ulimit_dct], version=DEFAULT_DOCKER_API_VERSION
)
self.assertIn('Ulimits', config) self.assertIn('Ulimits', config)
self.assertEqual(len(config['Ulimits']), 1) self.assertEqual(len(config['Ulimits']), 1)
ulimit_obj = config['Ulimits'][0] ulimit_obj = config['Ulimits'][0]
...@@ -160,7 +165,9 @@ class UtilsTest(base.BaseTestCase): ...@@ -160,7 +165,9 @@ class UtilsTest(base.BaseTestCase):
def test_create_host_config_dict_ulimit_capitals(self): def test_create_host_config_dict_ulimit_capitals(self):
ulimit_dct = {'Name': 'nofile', 'Soft': 8096, 'Hard': 8096 * 4} ulimit_dct = {'Name': 'nofile', 'Soft': 8096, 'Hard': 8096 * 4}
config = create_host_config(ulimits=[ulimit_dct]) config = create_host_config(
ulimits=[ulimit_dct], version=DEFAULT_DOCKER_API_VERSION
)
self.assertIn('Ulimits', config) self.assertIn('Ulimits', config)
self.assertEqual(len(config['Ulimits']), 1) self.assertEqual(len(config['Ulimits']), 1)
ulimit_obj = config['Ulimits'][0] ulimit_obj = config['Ulimits'][0]
...@@ -172,7 +179,9 @@ class UtilsTest(base.BaseTestCase): ...@@ -172,7 +179,9 @@ class UtilsTest(base.BaseTestCase):
def test_create_host_config_obj_ulimit(self): def test_create_host_config_obj_ulimit(self):
ulimit_dct = Ulimit(name='nofile', soft=8096) ulimit_dct = Ulimit(name='nofile', soft=8096)
config = create_host_config(ulimits=[ulimit_dct]) config = create_host_config(
ulimits=[ulimit_dct], version=DEFAULT_DOCKER_API_VERSION
)
self.assertIn('Ulimits', config) self.assertIn('Ulimits', config)
self.assertEqual(len(config['Ulimits']), 1) self.assertEqual(len(config['Ulimits']), 1)
ulimit_obj = config['Ulimits'][0] ulimit_obj = config['Ulimits'][0]
...@@ -186,14 +195,18 @@ class UtilsTest(base.BaseTestCase): ...@@ -186,14 +195,18 @@ class UtilsTest(base.BaseTestCase):
def test_create_host_config_dict_logconfig(self): def test_create_host_config_dict_logconfig(self):
dct = {'type': LogConfig.types.SYSLOG, 'config': {'key1': 'val1'}} dct = {'type': LogConfig.types.SYSLOG, 'config': {'key1': 'val1'}}
config = create_host_config(log_config=dct) config = create_host_config(
log_config=dct, version=DEFAULT_DOCKER_API_VERSION
)
self.assertIn('LogConfig', config) self.assertIn('LogConfig', config)
self.assertTrue(isinstance(config['LogConfig'], LogConfig)) self.assertTrue(isinstance(config['LogConfig'], LogConfig))
self.assertEqual(dct['type'], config['LogConfig'].type) self.assertEqual(dct['type'], config['LogConfig'].type)
def test_create_host_config_obj_logconfig(self): def test_create_host_config_obj_logconfig(self):
obj = LogConfig(type=LogConfig.types.SYSLOG, config={'key1': 'val1'}) obj = LogConfig(type=LogConfig.types.SYSLOG, config={'key1': 'val1'})
config = create_host_config(log_config=obj) config = create_host_config(
log_config=obj, version=DEFAULT_DOCKER_API_VERSION
)
self.assertIn('LogConfig', config) self.assertIn('LogConfig', config)
self.assertTrue(isinstance(config['LogConfig'], LogConfig)) self.assertTrue(isinstance(config['LogConfig'], LogConfig))
self.assertEqual(obj, config['LogConfig']) self.assertEqual(obj, config['LogConfig'])
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment