Class: ApiMiniTester::TestScenario
- Inherits:
-
Object
- Object
- ApiMiniTester::TestScenario
- Defined in:
- lib/api_mini_tester/test_scenario.rb
Instance Attribute Summary collapse
-
#base_uri ⇒ Object
readonly
Returns the value of attribute base_uri.
-
#data ⇒ Object
readonly
Returns the value of attribute data.
-
#debug ⇒ Object
readonly
Returns the value of attribute debug.
-
#defaults ⇒ Object
readonly
Returns the value of attribute defaults.
-
#name ⇒ Object
readonly
Returns the value of attribute name.
-
#results ⇒ Object
readonly
Returns the value of attribute results.
-
#scenario ⇒ Object
readonly
Returns the value of attribute scenario.
Instance Method Summary collapse
- #add_result(result) ⇒ Object
-
#initialize(base_uri, scenario, data, defaults, debug = false) ⇒ TestScenario
constructor
A new instance of TestScenario.
- #print_results ⇒ Object
- #run_scenario ⇒ Object
- #valid? ⇒ Boolean
Constructor Details
#initialize(base_uri, scenario, data, defaults, debug = false) ⇒ TestScenario
Returns a new instance of TestScenario.
8 9 10 11 12 13 14 15 16 |
# File 'lib/api_mini_tester/test_scenario.rb', line 8 def initialize(base_uri, scenario, data, defaults, debug = false) @base_uri = base_uri @scenario = scenario @data = data @name = scenario['name'] @defaults = defaults @debug = debug @results = {name: @name, desc: scenario['desc'], steps: []} end |
Instance Attribute Details
#base_uri ⇒ Object (readonly)
Returns the value of attribute base_uri.
6 7 8 |
# File 'lib/api_mini_tester/test_scenario.rb', line 6 def base_uri @base_uri end |
#data ⇒ Object (readonly)
Returns the value of attribute data.
6 7 8 |
# File 'lib/api_mini_tester/test_scenario.rb', line 6 def data @data end |
#debug ⇒ Object (readonly)
Returns the value of attribute debug.
6 7 8 |
# File 'lib/api_mini_tester/test_scenario.rb', line 6 def debug @debug end |
#defaults ⇒ Object (readonly)
Returns the value of attribute defaults.
6 7 8 |
# File 'lib/api_mini_tester/test_scenario.rb', line 6 def defaults @defaults end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
6 7 8 |
# File 'lib/api_mini_tester/test_scenario.rb', line 6 def name @name end |
#results ⇒ Object (readonly)
Returns the value of attribute results.
6 7 8 |
# File 'lib/api_mini_tester/test_scenario.rb', line 6 def results @results end |
#scenario ⇒ Object (readonly)
Returns the value of attribute scenario.
6 7 8 |
# File 'lib/api_mini_tester/test_scenario.rb', line 6 def scenario @scenario end |
Instance Method Details
#add_result(result) ⇒ Object
27 28 29 |
# File 'lib/api_mini_tester/test_scenario.rb', line 27 def add_result(result) @results.steps << result end |
#print_results ⇒ Object
31 32 33 34 35 |
# File 'lib/api_mini_tester/test_scenario.rb', line 31 def print_results @results.each do |line| puts line end end |
#run_scenario ⇒ Object
37 38 39 40 41 42 43 44 45 |
# File 'lib/api_mini_tester/test_scenario.rb', line 37 def run_scenario @context = [] scenario['steps'].each do |step| step = TestStep.new(base_uri, step, @context, data, defaults, debug) step_result, context = step.run_step @results[:steps] << step_result @context << context end end |
#valid? ⇒ Boolean
18 19 20 21 22 23 24 25 |
# File 'lib/api_mini_tester/test_scenario.rb', line 18 def valid? return false if scenario.nil? || scenario['steps'].nil? return false unless scenario['steps'].is_a?(Array) || scenario['steps'].empty? return false if name.nil? || name.empty? return false if base_uri.nil? || base_uri.empty? true end |