Extract task DSL code and spec

This commit is contained in:
Thibault Jouan
2013-07-30 19:33:59 +00:00
parent 2939123574
commit b1c99dbeeb
5 changed files with 58 additions and 50 deletions

View File

@@ -11,20 +11,6 @@ module Producer
def evaluate
DSL.new &@block
end
class DSL
ConditionNotMetError = Class.new(StandardError)
def initialize(&block)
instance_eval &block
rescue ConditionNotMetError
end
def condition(&block)
raise ConditionNotMetError unless block.call
end
end
end
end
end

View File

@@ -0,0 +1,18 @@
module Producer
module Core
class Task
class DSL
ConditionNotMetError = Class.new(StandardError)
def initialize(&block)
instance_eval &block
rescue ConditionNotMetError
end
def condition(&block)
raise ConditionNotMetError unless block.call
end
end
end
end
end