From fb3379215259c2c03ceda2849243a6fc131673e8 Mon Sep 17 00:00:00 2001 From: Harald Sitter Date: Mon, 19 Feb 2018 14:17:05 +0100 Subject: [PATCH] add a body_opts argument to Network#disconnect this enables passing force:true --- lib/docker/network.rb | 4 ++-- spec/docker/network_spec.rb | 7 ++++++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/lib/docker/network.rb b/lib/docker/network.rb index 55246151b..432e808c2 100644 --- a/lib/docker/network.rb +++ b/lib/docker/network.rb @@ -10,8 +10,8 @@ def connect(container, opts = {}, body_opts = {}) reload end - def disconnect(container, opts = {}) - body = MultiJson.dump(container: container) + def disconnect(container, opts = {}, body_opts = {}) + body = MultiJson.dump({ container: container }.merge(body_opts)) Docker::Util.parse_json( connection.post(path_for('disconnect'), opts, body: body) ) diff --git a/spec/docker/network_spec.rb b/spec/docker/network_spec.rb index ec8c3efd1..dbaebd8c2 100644 --- a/spec/docker/network_spec.rb +++ b/spec/docker/network_spec.rb @@ -139,10 +139,15 @@ subject.remove end - it 'connects a container to a network' do + it 'disconnects a container from a network' do subject.disconnect(container.id) expect(subject.info['Containers']).not_to include(container.id) end + + it 'force disconnects a container from a network' do + subject.disconnect(container.id, {}, force: true) + expect(subject.info['Containers']).not_to include(container.id) + end end describe '#remove' do