The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Test::BDD::Cucumber::Extension - Abstract superclass for extensions

VERSION

version 0.56

DESCRIPTION

Provides an abstract superclass for extensions. Loaded extensions will have their hook-implementations triggered at specific points during the BDD script execution.

PROPERTIES

config

A hash, the configuration read from the config file, verbatim. Extensions should look for their own configuration in $self->config->{extensions}->{<extension>}

METHODS

steps_directories()

The returns an arrayref whose values enumerate directories (relative to the directory of the extension) which hold step files to be loaded when the extension is loaded.

pre_execute()

Invoked by App::pherkin before executing any features. This callback allows generic extension setup. Reports errors by calling croak().

Note: When the TAP::Parser::SourceHandler::Feature plugin for prove is used, there are no guarantees at this point that this hook is called exactly once (or even just once per feature directory).

post_execute()

Invoked by App::pherkin after executing all features. This callback allows generic extension teardown and cleanup. Reports errors by calling croak().

Note: When the TAP::Parser::SourceHandler::Feature plugin for prove is used, there are no guarantees at this point that this hook is called at all (be it per feature directory or per prove run).

pre_feature($feature, $feature_stash)

Invoked by the Executor before executing the background and feature scenarios and their respective pre-hooks. Reports errors by calling croak().

post_feature($feature, $feature_stash)

Invoked by the Executor after executing the background and feature scenarios and their respective post-hooks. Reports errors by calling croak().

pre_scenario($scenario, $feature_stash, $scenario_stash)

Invoked by the Executor before executing the steps in $scenario and their respective pre-hooks. Reports errors by calling croak().

post_scenario($scenario, $feature_stash, $scenario_stash, $failed)

Invoked by the Executor after executing all the steps in $scenario and their respective post-hooks. Reports errors by calling croak().

$failure indicates whether any of the steps in the scenario has failed.

pre_step($step, $step_context)

Invoked by the Executor before executing each step in $scenario. Reports errors by calling croak().

Feature and scenario stashes can be reached through $step_context->{stash}->{feature} and $step_context->{stash}->{scenario}

Note: *executed* steps, so not called for skipped steps.

post_step($step, $step_context, $failed)

Invoked by the Executor after each executed step in $scenario. Reports errors by calling croak().

$failure indicates whether the step has failed.

Note: *executed* steps, so not called for skipped steps.

AUTHOR

Erik Huelsmann ehuels@gmail.com

LICENSE

Copyright 2016, Erik Huelsmann; Licensed under the same terms as Perl