module Rootage::ScenarioInterface
ScenarioInterface
provides basic methods for Scenario
.
Public Instance Methods
define(*args)
click to toggle source
# File lib/rootage/scenario.rb, line 73 def define(*args) @info.define(*args) end
define_phase(name, &block)
click to toggle source
Define a phase.
@raise [ArgumentError]
if there is same name phase already
@param name [String]
phase name
@yieldparam phase [Phase]
phase object
@return [void]
# File lib/rootage/scenario.rb, line 107 def define_phase(name, &block) if @__phase__.has_key?(name) raise ArgumentError.new('Phase "%{name}" has been defined already.' % {name: name}) end @__phase__[name] = phase_class.new(name) if block_given? block.call(@__phase__[name]) end end
desc()
click to toggle source
# File lib/rootage/scenario.rb, line 81 def desc @info.desc end
phase(name, &block)
click to toggle source
Find a phase object by the name.
@param name [Symbol]
the phase name
@return [Command::Phase]
a phase object
# File lib/rootage/scenario.rb, line 125 def phase(name, &block) unless @__phase__.has_key?(name) raise ArgumentError.new('Unknown phase name: "%s"' % name) end if block_given? block.call(@__phase__[name]) end @__phase__[name] end
phase_class()
click to toggle source
Return a phase class used for this scnario.
# File lib/rootage/scenario.rb, line 94 def phase_class @info[:phase_class] end
process_context_class()
click to toggle source
Return a process context class.
@return [Class]
process context class
# File lib/rootage/scenario.rb, line 89 def process_context_class @info[:process_context_class] end
scenario_name()
click to toggle source
# File lib/rootage/scenario.rb, line 77 def scenario_name @info.scenario_name end