dantleech / gherkin-lint
Gherkin linter
Installs: 20 639
Dependents: 4
Suggesters: 0
Security: 0
Stars: 37
Watchers: 2
Forks: 6
Open Issues: 4
Type:project
Requires
- php: ^8.1
- cucumber/gherkin: ^24.0
- cucumber/messages: ^19.0
- dantleech/invoke: ^2.0
- symfony/console: ^5.0|^6.0|^7.0
- symfony/filesystem: ^5.0|^6.0|^7.0
- symfony/finder: ^5.0|^6.0|^7.0
- symfony/string: ^5.1|^6.0|^7.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.8
- phpunit/phpunit: ^10.5
- symfony/process: ^6.0
- symfony/var-dumper: ^6.0
- vimeo/psalm: ^5.22
This package is auto-updated.
Last update: 2024-10-08 10:50:54 UTC
README
This package provides a Gherkin linter for PHP heavily inspired by vsiakka/gherkin-lint and using the PHP Gherkin Parser.
Contents
Usage
NOTE: Gherkin Lint requires PHP 8.1
Install with Composer:
$ composer require --dev dantleech/gherkin-lint
Lint your feature files:
$ ./vendor/bin/gherkinlint lint features/
To see the available and enabled rules run:
$ ./vendor/bin/gherkinlint rules
Configuration
By default all rules are enabled. In order to customise or disable them create
a config file gherkinlint.json
:
{
"rules": {
"allowed-tags": {
"allow": ["@my-special-tag", "@my-other-tag"]
},
"filename": {
"enabled": false
}
}
}
Use the rules
command to see which rules are enabled.
Disabling Rules
Rules can be disabled by adding a comment before the Feature declaration:
# @gherkinlint-disable-rule keyword-order Feature: My feature with strange keyword orders
Disable multiple rules with comma separation:
# @gherkinlint-disable-rule keyword-order, someother-rule Feature: My feature with strange keyword orders
Contributing
Make a pull request!