spec/beaker/hypervisor/docker_spec.rb in beaker-2.1.0 vs spec/beaker/hypervisor/docker_spec.rb in beaker-2.2.0
- old
+ new
@@ -20,10 +20,15 @@
allow( logger ).to receive(:error)
allow( logger ).to receive(:notify)
logger
end
+ let(:options) {{
+ :logger => logger,
+ :forward_ssh_agent => true,
+ }}
+
let(:image) do
image = double('Docker::Image')
allow( image ).to receive(:id)
allow( image ).to receive(:tag)
allow( image ).to receive(:delete)
@@ -50,11 +55,11 @@
allow( container ).to receive(:stop)
allow( container ).to receive(:delete)
container
end
- let (:docker) { ::Beaker::Docker.new( hosts, { :logger => logger }) }
+ let (:docker) { ::Beaker::Docker.new( hosts, options ) }
let(:docker_options) { nil }
before :each do
# Stub out all of the docker-api gem. we should never really call it
# from these tests
@@ -163,9 +168,21 @@
docker.provision
expect( hosts[0]['ip'] ).to be === '192.0.2.2'
expect( hosts[0]['port'] ).to be === 8022
end
+
+ it 'should have ssh agent forwarding enabled' do
+ ENV['DOCKER_HOST'] = nil
+ docker.provision
+
+ expect( hosts[0]['ip'] ).to be === '127.0.1.1'
+ expect( hosts[0]['port'] ).to be === 8022
+ expect( hosts[0]['ssh'][:password] ).to be === 'root'
+ expect( hosts[0]['ssh'][:port] ).to be === 8022
+ expect( hosts[0]['ssh'][:forward_agent] ).to be === true
+ end
+
end
it 'should record the image and container for later' do
docker.provision