/**
  * {@inheritdoc}
  */
 public function tearDown(Environment $env, FeatureNode $feature, $skip, TestResult $result)
 {
     $event = new BeforeBackgroundTeardown($env, $feature, $feature->getBackground(), $result);
     $this->eventDispatcher->dispatch(BackgroundTested::BEFORE_TEARDOWN, $event);
     $teardown = $this->baseTester->tearDown($env, $feature, $skip, $result);
     $event = new AfterBackgroundTested($env, $feature, $feature->getBackground(), $result, $teardown);
     $this->eventDispatcher->dispatch(BackgroundTested::AFTER, $event);
     return $teardown;
 }
예제 #2
0
 /**
  * Tests background of the provided feature against provided environment.
  *
  * @param Environment $env
  * @param FeatureNode $feature
  * @param Boolean     $skip
  *
  * @return TestResult
  */
 private function testBackground(Environment $env, FeatureNode $feature, $skip)
 {
     $setup = $this->backgroundTester->setUp($env, $feature, $skip);
     $skipSetup = !$setup->isSuccessful() || $skip;
     $testResult = $this->backgroundTester->test($env, $feature, $skipSetup);
     $teardown = $this->backgroundTester->tearDown($env, $feature, $skipSetup, $testResult);
     $integerResult = new IntegerTestResult($testResult->getResultCode());
     return new TestWithSetupResult($setup, $integerResult, $teardown);
 }