Module: Rootage::ScenarioInterface
Overview
ScenarioInterface provides basic methods for Scenario.
Instance Method Summary collapse
- #define(*args) ⇒ Object
-
#define_phase(name) {|phase| ... } ⇒ void
Define a phase.
- #desc ⇒ Object
-
#phase(name, &block) ⇒ Command::Phase
Find a phase object by the name.
-
#phase_class ⇒ Object
Return a phase class used for this scnario.
-
#process_context_class ⇒ Class
Return a process context class.
- #scenario_name ⇒ Object
Instance Method Details
#define(*args) ⇒ Object
73 74 75 |
# File 'lib/rootage/scenario.rb', line 73 def define(*args) @info.define(*args) end |
#define_phase(name) {|phase| ... } ⇒ void
This method returns an undefined value.
Define a phase.
107 108 109 110 111 112 113 114 115 116 117 |
# 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 ⇒ Object
81 82 83 |
# File 'lib/rootage/scenario.rb', line 81 def desc @info.desc end |
#phase(name, &block) ⇒ Command::Phase
Find a phase object by the name.
125 126 127 128 129 130 131 132 133 134 135 |
# 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 ⇒ Object
Return a phase class used for this scnario.
94 95 96 |
# File 'lib/rootage/scenario.rb', line 94 def phase_class @info[:phase_class] end |
#process_context_class ⇒ Class
Return a process context class.
89 90 91 |
# File 'lib/rootage/scenario.rb', line 89 def process_context_class @info[:process_context_class] end |
#scenario_name ⇒ Object
77 78 79 |
# File 'lib/rootage/scenario.rb', line 77 def scenario_name @info.scenario_name end |