Open enkessler opened 4 years ago
This looks quite interesting and a good learning exercise to implement. I can make a start on this unless there's already something you have done ?
Go for it! Anything unchecked should be fair game, although some of the CukeSniffer stuff may have overlap with the GherkinLint stuff.
Hi, one suggestion to the list. There is a 'StepWithTooManyCharactersLinter' rule, would be grate to have same thing for Scenario names if possible.
That should be doable. Would you like to take a crack at it @PKuravskyi ?
@enkessler PR is ready for review
While the fundamental linting, reporting, and API portion of the gem is complete, there are still a lot of linters left to add. The sky is the limit, really. Initially, however, I would like to port over the existing linters from several other popular (but defunct) Gherkin/Cucumber linting gems.
https://github.com/funkwerk/gherkin_lint https://github.com/r-cochran/cuke_sniffer
From GherkinLint
use outlinetoo fuzzy to bother?From CukeSniffer (many of these may need to be broken into multiple linters for simplicity or made non-default due to their highly opinionated nature)
Feature And Scenario
Comment comes between tag and properly executing line. This feature file cannot run!If a feature file cannot be parsed, it cannot be lintedFeature Only
Background And Scenario
Background Only
There is a background with a tag. This feature file cannot run!If a feature file cannot be parsed, it cannot be lintedScenario Only
Hook and step definition rulesThe scope of CukeLinter is Gherkin. Implementation language specific files are not linted.Feel free to comment on this issue if you would like to claim some of the needed linters so that duplicate effort is avoided. Even making just one linter is fine.