mainContext; } /** * @param SilverStripeContext $mainContext * @return $this */ public function setMainContext($mainContext) { $this->mainContext = $mainContext; return $this; } /** * Helper method to detect the main context * * @BeforeScenario * @param BeforeScenarioScope $scope */ public function detectMainContext(BeforeScenarioScope $scope) { $environment = $scope->getEnvironment(); if (! $environment instanceof InitializedContextEnvironment) { throw new \LogicException("No context available for this environment"); } $contexts = $environment->getContexts(); foreach ($contexts as $context) { if ($context instanceof SilverStripeContext) { $this->setMainContext($context); return; } } throw new \LogicException("No SilverStripeContext is configured"); } }