class CukeLinter::TestWithNoVerificationStepLinter
A linter that detects scenarios and outlines that do not have a verification (i.e. 'Then') 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_verification_step_linter.rb, line 8 def configure(options) @then_keywords = options['Then'] 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_verification_step_linter.rb, line 23 def message "Test does not have a 'Then' 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_verification_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| then_keywords.include?(step.keyword) } end
Private Instance Methods
then_keywords()
click to toggle source
# File lib/cuke_linter/linters/test_with_no_verification_step_linter.rb, line 29 def then_keywords @then_keywords || [DEFAULT_THEN_KEYWORD] end