diff --git a/lib/producer/core/remote/environment.rb b/lib/producer/core/remote/environment.rb index b78c049..b433cd2 100644 --- a/lib/producer/core/remote/environment.rb +++ b/lib/producer/core/remote/environment.rb @@ -15,7 +15,7 @@ module Producer require 'forwardable' extend Forwardable - def_delegator :@variables, :key? + def_delegators :@variables, :[], :key? attr_reader :variables diff --git a/spec/producer/core/remote/environment_spec.rb b/spec/producer/core/remote/environment_spec.rb index bc2e454..99dbbae 100644 --- a/spec/producer/core/remote/environment_spec.rb +++ b/spec/producer/core/remote/environment_spec.rb @@ -27,11 +27,22 @@ module Producer::Core end describe '#key?' do - let(:key) { 'SOME_KEY' } + context 'when key is defined' do + it 'returns true' do + expect(environment.key? 'FOO').to be true + end + end - it 'forwards the message to @variables' do - expect(environment.variables).to receive(:key?).with(key) - environment.key? key + context 'when key is not defined' do + it 'returns false' do + expect(environment.key? 'INEXISTENT_KEY').to be false + end + end + end + + describe '#[]' do + it 'returns the value indexed by given key' do + expect(environment['FOO']).to eq 'bar' end end end