Class: ApiMiniTester::TestSuite
- Inherits:
-
Object
- Object
- ApiMiniTester::TestSuite
- Defined in:
- lib/api_mini_tester/test_suite.rb
Constant Summary collapse
- DEBUG_FILE =
'debug.json'.freeze
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.
-
#results ⇒ Object
readonly
Returns the value of attribute results.
-
#scenarios ⇒ Object
readonly
Returns the value of attribute scenarios.
Instance Method Summary collapse
-
#initialize(suite_def, debug = false) ⇒ TestSuite
constructor
A new instance of TestSuite.
- #print_results(format) ⇒ Object
- #run_scenarios ⇒ Object
- #setup ⇒ Object
- #valid? ⇒ Boolean
Constructor Details
#initialize(suite_def, debug = false) ⇒ TestSuite
Returns a new instance of TestSuite.
11 12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/api_mini_tester/test_suite.rb', line 11 def initialize(suite_def, debug = false) if suite_def.is_a?(String) @test = YAML.load(File.open(suite_def)) elsif suite_def.is_a?(Hash) @test = suite_def end @debug = debug if debug File.delete(DEBUG_FILE) if File.exist?(DEBUG_FILE) end setup end |
Instance Attribute Details
#base_uri ⇒ Object (readonly)
Returns the value of attribute base_uri.
9 10 11 |
# File 'lib/api_mini_tester/test_suite.rb', line 9 def base_uri @base_uri end |
#data ⇒ Object (readonly)
Returns the value of attribute data.
9 10 11 |
# File 'lib/api_mini_tester/test_suite.rb', line 9 def data @data end |
#debug ⇒ Object (readonly)
Returns the value of attribute debug.
9 10 11 |
# File 'lib/api_mini_tester/test_suite.rb', line 9 def debug @debug end |
#defaults ⇒ Object (readonly)
Returns the value of attribute defaults.
9 10 11 |
# File 'lib/api_mini_tester/test_suite.rb', line 9 def defaults @defaults end |
#results ⇒ Object (readonly)
Returns the value of attribute results.
9 10 11 |
# File 'lib/api_mini_tester/test_suite.rb', line 9 def results @results end |
#scenarios ⇒ Object (readonly)
Returns the value of attribute scenarios.
9 10 11 |
# File 'lib/api_mini_tester/test_suite.rb', line 9 def scenarios @scenarios end |
Instance Method Details
#print_results(format) ⇒ Object
48 49 50 51 |
# File 'lib/api_mini_tester/test_suite.rb', line 48 def print_results(format) formatter = TestFormatter.new(results) formatter.send("to_#{format}") end |
#run_scenarios ⇒ Object
39 40 41 42 43 44 45 46 |
# File 'lib/api_mini_tester/test_suite.rb', line 39 def run_scenarios scenarios.each do |scenario| runner = TestScenario.new(base_uri, scenario, data, defaults, debug) runner.run_scenario @results[:scenarios] << runner.results end @results end |
#setup ⇒ Object
31 32 33 34 35 36 37 |
# File 'lib/api_mini_tester/test_suite.rb', line 31 def setup @base_uri = @test['settings']['baseurl'] @scenarios = @test['tests'] @data = @test['data'] @defaults = @test['defaults'] @results = {name: @test['name'], desc: @test['desc'], scenarios: []} end |
#valid? ⇒ Boolean
24 25 26 27 28 29 |
# File 'lib/api_mini_tester/test_suite.rb', line 24 def valid? return false if base_uri.nil? || base_uri.empty? return false if scenarios.nil? || scenarios.empty? true end |