Merge pull request #6849 from robbieaverill/bugfix/extension-arguments-in-sapphiretest

FIX Regression from 3.x: allow $required_extensions to have arguments
This commit is contained in:
Damian Mooyman 2017-04-28 20:29:11 +12:00 committed by GitHub
commit 3f9528a073

View File

@ -16,6 +16,7 @@ use SilverStripe\Core\Config\ConfigLoader;
use SilverStripe\Core\Config\CoreConfigFactory;
use SilverStripe\Core\Config\DefaultConfig;
use SilverStripe\Core\Config\Middleware\ExtensionMiddleware;
use SilverStripe\Core\Extension;
use SilverStripe\Core\Flushable;
use SilverStripe\Core\Injector\Injector;
use SilverStripe\Core\Manifest\ClassManifest;
@ -376,7 +377,8 @@ class SapphireTest extends PHPUnit_Framework_TestCase
}
self::$extensions_to_remove[$class] = array();
foreach ($extensions as $extension) {
if (!class_exists($extension)) {
$extensionClass = Extension::get_classname_without_arguments($extension);
if (!class_exists($extensionClass)) {
$self = static::class;
throw new LogicException("Test {$self} requires extension {$extension} which doesn't exist");
}