* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Behat\Behat\Tester; use Behat\Behat\Tester\Result\StepResult; use Behat\Gherkin\Node\FeatureNode; use Behat\Gherkin\Node\StepNode; use Behat\Testwork\Environment\Environment; use Behat\Testwork\Tester\Setup\Setup; use Behat\Testwork\Tester\Setup\Teardown; /** * Prepares and tests provided step object against provided environment. * * @author Konstantin Kudryashov */ interface StepTester { /** * Sets up step for a test. * * @param Environment $env * @param FeatureNode $feature * @param StepNode $step * @param Boolean $skip * * @return Setup */ public function setUp(Environment $env, FeatureNode $feature, StepNode $step, $skip); /** * Tests step. * * @param Environment $env * @param FeatureNode $feature * @param StepNode $step * @param Boolean $skip * * @return StepResult */ public function test(Environment $env, FeatureNode $feature, StepNode $step, $skip); /** * Tears down step after a test. * * @param Environment $env * @param FeatureNode $feature * @param StepNode $step * @param Boolean $skip * @param StepResult $result * * @return Teardown */ public function tearDown(Environment $env, FeatureNode $feature, StepNode $step, $skip, StepResult $result); }