Skip to content

Commit 403d271

Browse files
committed
Raise exceptions for API errors on network connect/disconnect
Signed-off-by: Aanand Prasad <[email protected]>
1 parent ce8a02f commit 403d271

File tree

2 files changed

+10
-2
lines changed

2 files changed

+10
-2
lines changed

docker/api/network.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,11 +57,13 @@ def connect_container_to_network(self, container, net_id,
5757
},
5858
}
5959
url = self._url("/networks/{0}/connect", net_id)
60-
self._post_json(url, data=data)
60+
res = self._post_json(url, data=data)
61+
self._raise_for_status(res)
6162

6263
@check_resource
6364
@minimum_version('1.21')
6465
def disconnect_container_from_network(self, container, net_id):
6566
data = {"container": container}
6667
url = self._url("/networks/{0}/disconnect", net_id)
67-
self._post_json(url, data=data)
68+
res = self._post_json(url, data=data)
69+
self._raise_for_status(res)

tests/integration/network_test.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,10 +117,16 @@ def test_connect_and_disconnect_container(self):
117117
list(network_data['Containers'].keys()),
118118
[container['Id']])
119119

120+
with pytest.raises(docker.errors.APIError):
121+
self.client.connect_container_to_network(container, net_id)
122+
120123
self.client.disconnect_container_from_network(container, net_id)
121124
network_data = self.client.inspect_network(net_id)
122125
self.assertFalse(network_data.get('Containers'))
123126

127+
with pytest.raises(docker.errors.APIError):
128+
self.client.disconnect_container_from_network(container, net_id)
129+
124130
@requires_api_version('1.22')
125131
def test_connect_with_aliases(self):
126132
net_name, net_id = self.create_network()

0 commit comments

Comments
 (0)