Class: Spinach::Reporter
- Inherits:
-
Object
- Object
- Spinach::Reporter
- Defined in:
- lib/spinach/reporter.rb,
lib/spinach/reporter/stdout.rb,
lib/spinach/reporter/progress.rb,
lib/spinach/reporter/reporting.rb,
lib/spinach/reporter/failure_file.rb
Overview
Spinach reporter collects information from Runner hooks and outputs the results
Direct Known Subclasses
Defined Under Namespace
Modules: Reporting Classes: FailureFile, Progress, Stdout
Instance Attribute Summary collapse
-
#current_feature ⇒ Object
readonly
A Hash with options for the reporter.
-
#current_scenario ⇒ Object
readonly
A Hash with options for the reporter.
-
#error_steps ⇒ Object
readonly
Returns the value of attribute error_steps.
-
#failed_steps ⇒ Object
readonly
Returns the value of attribute failed_steps.
-
#options ⇒ Object
readonly
A Hash with options for the reporter.
-
#pending_steps ⇒ Object
readonly
Returns the value of attribute pending_steps.
-
#successful_steps ⇒ Object
readonly
Returns the value of attribute successful_steps.
-
#undefined_features ⇒ Object
readonly
Returns the value of attribute undefined_features.
-
#undefined_steps ⇒ Object
readonly
Returns the value of attribute undefined_steps.
Instance Method Summary collapse
- #after_feature_run(*args) ⇒ Object
- #after_run(*args) ⇒ Object
- #after_scenario_run(*args) ⇒ Object
- #around_scenario_run(*args) ⇒ Object
- #before_feature_run(*args) ⇒ Object
- #before_run(*args) ⇒ Object
- #before_scenario_run(*args) ⇒ Object
-
#bind ⇒ Object
Hooks the reporter to the runner endpoints.
-
#clear_current_feature(*args) ⇒ Object
Clears this current feature.
-
#clear_current_scenario(*args) ⇒ Object
Clears this current scenario.
-
#initialize(options = {}) ⇒ Reporter
constructor
Initialize a reporter with an empty error container.
- #on_error_step(*args) ⇒ Object
- #on_failed_step(*args) ⇒ Object
- #on_feature_not_found(*args) ⇒ Object
- #on_pending_step(*args) ⇒ Object
- #on_skipped_step(*args) ⇒ Object
- #on_successful_step(*args) ⇒ Object
- #on_undefined_step(*args) ⇒ Object
-
#set_current_feature(feature) ⇒ Object
Stores the current feature.
-
#set_current_scenario(scenario) ⇒ Object
Stores the current scenario.
Constructor Details
#initialize(options = {}) ⇒ Reporter
Initialize a reporter with an empty error container.
10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/spinach/reporter.rb', line 10 def initialize( = {}) @errors = [] @options = @orderer = [:orderer] @undefined_features = [] @successful_steps = [] @undefined_steps = [] @failed_steps = [] @error_steps = [] @pending_steps = [] end |
Instance Attribute Details
#current_feature ⇒ Object (readonly)
A Hash with options for the reporter
24 25 26 |
# File 'lib/spinach/reporter.rb', line 24 def current_feature @current_feature end |
#current_scenario ⇒ Object (readonly)
A Hash with options for the reporter
24 25 26 |
# File 'lib/spinach/reporter.rb', line 24 def current_scenario @current_scenario end |
#error_steps ⇒ Object (readonly)
Returns the value of attribute error_steps.
26 27 28 |
# File 'lib/spinach/reporter.rb', line 26 def error_steps @error_steps end |
#failed_steps ⇒ Object (readonly)
Returns the value of attribute failed_steps.
26 27 28 |
# File 'lib/spinach/reporter.rb', line 26 def failed_steps @failed_steps end |
#options ⇒ Object (readonly)
A Hash with options for the reporter
24 25 26 |
# File 'lib/spinach/reporter.rb', line 24 def @options end |
#pending_steps ⇒ Object (readonly)
Returns the value of attribute pending_steps.
26 27 28 |
# File 'lib/spinach/reporter.rb', line 26 def pending_steps @pending_steps end |
#successful_steps ⇒ Object (readonly)
Returns the value of attribute successful_steps.
26 27 28 |
# File 'lib/spinach/reporter.rb', line 26 def successful_steps @successful_steps end |
#undefined_features ⇒ Object (readonly)
Returns the value of attribute undefined_features.
26 27 28 |
# File 'lib/spinach/reporter.rb', line 26 def undefined_features @undefined_features end |
#undefined_steps ⇒ Object (readonly)
Returns the value of attribute undefined_steps.
26 27 28 |
# File 'lib/spinach/reporter.rb', line 26 def undefined_steps @undefined_steps end |
Instance Method Details
#after_feature_run(*args) ⇒ Object
56 |
# File 'lib/spinach/reporter.rb', line 56 def after_feature_run(*args); end |
#after_run(*args) ⇒ Object
54 |
# File 'lib/spinach/reporter.rb', line 54 def after_run(*args); end |
#after_scenario_run(*args) ⇒ Object
62 |
# File 'lib/spinach/reporter.rb', line 62 def after_scenario_run(*args); end |
#around_scenario_run(*args) ⇒ Object
59 60 61 |
# File 'lib/spinach/reporter.rb', line 59 def around_scenario_run(*args) yield end |
#before_feature_run(*args) ⇒ Object
55 |
# File 'lib/spinach/reporter.rb', line 55 def before_feature_run(*args); end |
#before_run(*args) ⇒ Object
53 |
# File 'lib/spinach/reporter.rb', line 53 def before_run(*args); end |
#before_scenario_run(*args) ⇒ Object
58 |
# File 'lib/spinach/reporter.rb', line 58 def before_scenario_run(*args); end |
#bind ⇒ Object
Hooks the reporter to the runner endpoints
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
# File 'lib/spinach/reporter.rb', line 29 def bind Spinach.hooks.tap do |hooks| hooks.before_run { |*args| before_run(*args) } hooks.after_run { |*args| after_run(*args) } hooks.before_feature { |*args| before_feature_run(*args) } hooks.after_feature { |*args| after_feature_run(*args) } hooks.on_undefined_feature { |*args| on_feature_not_found(*args) } hooks.before_scenario { |*args| before_scenario_run(*args) } hooks.around_scenario { |*args, &block| around_scenario_run(*args, &block) } hooks.after_scenario { |*args| after_scenario_run(*args) } hooks.on_successful_step { |*args| on_successful_step(*args) } hooks.on_undefined_step { |*args| on_undefined_step(*args) } hooks.on_pending_step { |*args| on_pending_step(*args) } hooks.on_failed_step { |*args| on_failed_step(*args) } hooks.on_error_step { |*args| on_error_step(*args) } hooks.on_skipped_step { |*args| on_skipped_step(*args) } hooks.before_feature { |*args| set_current_feature(*args) } hooks.after_feature { |*args| clear_current_feature(*args) } hooks.before_scenario { |*args| set_current_scenario(args.first) } hooks.after_scenario { |*args| clear_current_scenario(args.first) } end end |
#clear_current_feature(*args) ⇒ Object
Clears this current feature
79 80 81 |
# File 'lib/spinach/reporter.rb', line 79 def clear_current_feature(*args) @current_feature = nil end |
#clear_current_scenario(*args) ⇒ Object
Clears this current scenario
92 93 94 |
# File 'lib/spinach/reporter.rb', line 92 def clear_current_scenario(*args) @current_scenario = nil end |
#on_error_step(*args) ⇒ Object
65 |
# File 'lib/spinach/reporter.rb', line 65 def on_error_step(*args); end |
#on_failed_step(*args) ⇒ Object
64 |
# File 'lib/spinach/reporter.rb', line 64 def on_failed_step(*args); end |
#on_feature_not_found(*args) ⇒ Object
57 |
# File 'lib/spinach/reporter.rb', line 57 def on_feature_not_found(*args); end |
#on_pending_step(*args) ⇒ Object
67 |
# File 'lib/spinach/reporter.rb', line 67 def on_pending_step(*args); end |
#on_skipped_step(*args) ⇒ Object
68 |
# File 'lib/spinach/reporter.rb', line 68 def on_skipped_step(*args); end |
#on_successful_step(*args) ⇒ Object
63 |
# File 'lib/spinach/reporter.rb', line 63 def on_successful_step(*args); end |
#on_undefined_step(*args) ⇒ Object
66 |
# File 'lib/spinach/reporter.rb', line 66 def on_undefined_step(*args); end |
#set_current_feature(feature) ⇒ Object
Stores the current feature
74 75 76 |
# File 'lib/spinach/reporter.rb', line 74 def set_current_feature(feature) @current_feature = feature end |
#set_current_scenario(scenario) ⇒ Object
Stores the current scenario
87 88 89 |
# File 'lib/spinach/reporter.rb', line 87 def set_current_scenario(scenario) @current_scenario = scenario end |