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

0.2.3 2024-06-08 10:11 UTC

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/

image

To see the available and enabled rules run:

$ ./vendor/bin/gherkinlint rules

image

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!