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