caciobanu/behat-deprecation-extension

Deprecation extension for Behat

Maintainers

👁 caciobanu

Package info

github.com/caciobanu/behat-deprecation-extension

Type:behat-extension

pkg:composer/caciobanu/behat-deprecation-extension

Statistics

Installs: 715 647

Dependents: 4

Suggesters: 0

Stars: 22

Open Issues: 2

v2.1.1 2020-07-07 14:17 UTC

Requires

Requires (Dev)

Suggests

None

Provides

None

Conflicts

None

Replaces

None

MIT 47ebbd4127de1d3e91a103f027ac35493b5dea8a

  • Catalin Ciobanu <caciobanu.woop@gmail.com>

BDDBehatdeprecation

This package is auto-updated.

Last update: 2026-05-29 01:31:13 UTC


README

A Behat extension to display the whole list of user deprecated features (E_USER_DEPRECATED messages). It can be useful in a Symfony2 application when the tests are run with Symfony2 BrowserKit driver for Mink framework but not limited to.

👁 Package version
👁 Build Status

Installation

You can use Composer to install the extension to your project:

composer require --dev caciobanu/behat-deprecation-extension

Then, in your behat config file behat.yml, register the extension:

# behat.yml
default:
 extensions:
 Caciobanu\Behat\DeprecationExtension: ~

Or like below with a mode set:

# behat.yml
default:
 extensions:
 Caciobanu\Behat\DeprecationExtension:
 mode: weak

The following reporting modes are supported:

  • use null to display the deprecation report without making the test suite fail (default);
  • use "weak" to hide the deprecation report but keep a global count;
  • use a number to define the upper bound of allowed deprecations, making the tests fail whenever more notices are triggered.

Basic usage

Run Behat and enjoy :)

The summary includes:

  • Unsilenced
    • Reports deprecation notices that were triggered without the recommended @-silencing operator.
  • Legacy
    • Deprecation notices denote tests that explicitly test some legacy features, marked with the @legacy tag.
  • Remaining
    • Deprecation notices are all other (non-legacy) notices.

Ignore some deprecation

You can filter the file that did make the call to trigger_error like this:

default:
 extensions:
 Caciobanu\Behat\DeprecationExtension:
 ignore:
 - { file: '#symfony#' }
 - { file: '#my-app#' }

It will ignore every files that matches any of the listed regexps

Or you can filter deprecation messages like this:

default:
 extensions:
 Caciobanu\Behat\DeprecationExtension:
 ignore:
 - { message: '#symfony#' }
 - { message: '#my-app#' }

It will ignore every deprecation message that matches any of the listed regexps

You can use both filter types at the same time:

default:
 extensions:
 Caciobanu\Behat\DeprecationExtension:
 ignore:
 - { file: '#symfony#', message: '#symfony#' }

Credits

This library is developed by Catalin Ciobanu.

License

👁 license