Implement `set' task keyword
This commit is contained in:
parent
d16f952232
commit
2363bfb62a
@ -57,6 +57,17 @@ Feature: key/value registry
|
||||
When I successfully execute the recipe
|
||||
Then the output must contain "some_value"
|
||||
|
||||
Scenario: `set' keyword sets a value from a task
|
||||
Given a recipe with:
|
||||
"""
|
||||
task :registry_testing do
|
||||
set :some_key, 'some_value'
|
||||
echo get :some_key
|
||||
end
|
||||
"""
|
||||
When I successfully execute the recipe
|
||||
Then the output must contain "some_value"
|
||||
|
||||
Scenario: `set?' keyword tests wether given key is defined
|
||||
Given a recipe with:
|
||||
"""
|
||||
|
@ -16,6 +16,7 @@ module Producer
|
||||
extend Forwardable
|
||||
def_delegators :@name, :to_s
|
||||
def_delegators :@env, :target
|
||||
def_delegator :@env, :[]=, :set
|
||||
def_delegator :@env, :[], :get
|
||||
def_delegator :@env, :key?, :set?
|
||||
def_delegator :@env, :recipe_argv
|
||||
|
@ -152,6 +152,13 @@ module Producer::Core
|
||||
end
|
||||
end
|
||||
|
||||
describe '#set' do
|
||||
it 'sets a value in the registry' do
|
||||
task.set :some_key, :some_value
|
||||
expect(task.get :some_key).to eq :some_value
|
||||
end
|
||||
end
|
||||
|
||||
describe '#get' do
|
||||
before { env[:some_key] = :some_value }
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user