class CukeLinter::TestWithNoActionStepLinter
A linter that detects scenarios and outlines that do not have an action (i.e. 'When') step
Public Instance Methods
configure(options)
click to toggle source
Changes the linting settings on the linter using the provided configuration
# File lib/cuke_linter/linters/test_with_no_action_step_linter.rb, line 8 def configure(options) @when_keywords = options['When'] end
message()
click to toggle source
The message used to describe the problem that has been found
# File lib/cuke_linter/linters/test_with_no_action_step_linter.rb, line 23 def message "Test does not have a 'When' step." end
rule(model)
click to toggle source
The rule used to determine if a model has a problem
# File lib/cuke_linter/linters/test_with_no_action_step_linter.rb, line 13 def rule(model) return false unless model.is_a?(CukeModeler::Scenario) || model.is_a?(CukeModeler::Outline) model_steps = model.steps || [] background_steps = model.parent_model.has_background? ? model.parent_model.background.steps || [] : [] all_steps = model_steps + background_steps all_steps.none? { |step| when_keywords.include?(step.keyword) } end
Private Instance Methods
when_keywords()
click to toggle source
# File lib/cuke_linter/linters/test_with_no_action_step_linter.rb, line 29 def when_keywords @when_keywords || [DEFAULT_WHEN_KEYWORD] end