Sha256: 9a4110a2ff1f1e48bcd792bca621ec28995a87e66b32b4c9cd7919e0e5c2b999
Contents?: true
Size: 751 Bytes
Versions: 1
Compression:
Stored size: 751 Bytes
Contents
module Lopata class SharedStep attr_reader :name, :block class SharedStepNotFound < StandardError; end def self.register(name, &block) raise ArgumentError, "Comma is not allowed in shared step name: '%s'" % name if name =~ /,/ @shared_steps ||= {} @shared_steps[name] = new(name, &block) end def self.find(name) @shared_steps[name] or raise StandardError, "Shared step '%s' not found" % name end def initialize(name, &block) @name, @block = name, block end def steps @steps ||= build_steps end def build_steps builder = Lopata::ScenarioBuilder.new(name) builder.instance_exec(&block) builder.steps end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
lopata-0.1.1 | lib/lopata/shared_step.rb |