Allowed-tags rule
Proposed Name: allowed-tags
Describe what this rule should do:
On several projects, we have seen a smorgasbord of tags that can get fairly extreme. This rule would force files which have any tags to be allowlisted. This list would have some default tags which would be allowable, such as ignore
.
What category of rule is this? (place an "X" next to just one item)
-
Warns about a potential error (problem) -
Suggests an alternate way of doing something (suggestion) -
Enforces style (layout) -
Other (please specify:)
What message would be displayed?
Tag "for-fun-tag" not on the allowed list found on scenario "User logout"
Provide 2-3 gherkin examples that this would capture:
Allowed tag:
Feature: Homepage
In order to find out more about FooBar
As a potential client
I want to be told access the homepage
@ignore
Scenario: Visiting the homepage is successful
When Given a user visits the homepage
Then the user should be presented with a description of FooBar
Feature: Homepage
In order to find out more about FooBar
As a potential client
I want to be told access the homepage
@tags-are-fun, @release-v1, @smoke-test, @synthetic
Scenario: Visiting the homepage is successful
When Given a user visits the homepage
Then the user should be presented with a description of FooBar
How would this be configured? What options are needed for this rule?
By a list of tags, with an agreed upon allowlist within the project that may require removal option in the future.
allowTags: ["smoke-test", "synthetic"]
What other context would be provided with the message? (what do we need to teach someone seeing this message for the first time?)
For this rule - we would want to have the tag name and the item it is being added to scenario
, feature
or background
if we allow it.
Does this rule need to be able to be disabled on a case-by-case basis? If so, propose how this might be done.
Not initially - this is something we would wait for feedback from the community on.