@@ -115,7 +115,8 @@ def test_connect_and_disconnect_container(self):
115
115
network_data = self .client .inspect_network (net_id )
116
116
self .assertEqual (
117
117
list (network_data ['Containers' ].keys ()),
118
- [container ['Id' ]])
118
+ [container ['Id' ]]
119
+ )
119
120
120
121
with pytest .raises (docker .errors .APIError ):
121
122
self .client .connect_container_to_network (container , net_id )
@@ -127,6 +128,33 @@ def test_connect_and_disconnect_container(self):
127
128
with pytest .raises (docker .errors .APIError ):
128
129
self .client .disconnect_container_from_network (container , net_id )
129
130
131
+ @requires_api_version ('1.22' )
132
+ def test_connect_and_force_disconnect_container (self ):
133
+ net_name , net_id = self .create_network ()
134
+
135
+ container = self .client .create_container ('busybox' , 'top' )
136
+ self .tmp_containers .append (container )
137
+ self .client .start (container )
138
+
139
+ network_data = self .client .inspect_network (net_id )
140
+ self .assertFalse (network_data .get ('Containers' ))
141
+
142
+ self .client .connect_container_to_network (container , net_id )
143
+ network_data = self .client .inspect_network (net_id )
144
+ self .assertEqual (
145
+ list (network_data ['Containers' ].keys ()),
146
+ [container ['Id' ]]
147
+ )
148
+
149
+ self .client .disconnect_container_from_network (container , net_id , True )
150
+ network_data = self .client .inspect_network (net_id )
151
+ self .assertFalse (network_data .get ('Containers' ))
152
+
153
+ with pytest .raises (docker .errors .APIError ):
154
+ self .client .disconnect_container_from_network (
155
+ container , net_id , force = True
156
+ )
157
+
130
158
@requires_api_version ('1.22' )
131
159
def test_connect_with_aliases (self ):
132
160
net_name , net_id = self .create_network ()
@@ -300,7 +328,8 @@ def test_create_check_duplicate(self):
300
328
net_name , net_id = self .create_network ()
301
329
with self .assertRaises (docker .errors .APIError ):
302
330
self .client .create_network (net_name , check_duplicate = True )
303
- self .client .create_network (net_name , check_duplicate = False )
331
+ net_id = self .client .create_network (net_name , check_duplicate = False )
332
+ self .tmp_networks .append (net_id ['Id' ])
304
333
305
334
@requires_api_version ('1.22' )
306
335
def test_connect_with_links (self ):
@@ -387,3 +416,27 @@ def test_create_internal_networks(self):
387
416
_ , net_id = self .create_network (internal = True )
388
417
net = self .client .inspect_network (net_id )
389
418
assert net ['Internal' ] is True
419
+
420
+ @requires_api_version ('1.23' )
421
+ def test_create_network_with_labels (self ):
422
+ _ , net_id = self .create_network (labels = {
423
+ 'com.docker.py.test' : 'label'
424
+ })
425
+
426
+ net = self .client .inspect_network (net_id )
427
+ assert 'Labels' in net
428
+ assert len (net ['Labels' ]) == 1
429
+ assert net ['Labels' ] == {
430
+ 'com.docker.py.test' : 'label'
431
+ }
432
+
433
+ @requires_api_version ('1.23' )
434
+ def test_create_network_with_labels_wrong_type (self ):
435
+ with pytest .raises (TypeError ):
436
+ self .create_network (labels = ['com.docker.py.test=label' , ])
437
+
438
+ @requires_api_version ('1.23' )
439
+ def test_create_network_ipv6_enabled (self ):
440
+ _ , net_id = self .create_network (enable_ipv6 = True )
441
+ net = self .client .inspect_network (net_id )
442
+ assert net ['EnableIPv6' ] is True
0 commit comments