Пример #1
0
 function init()
 {
     parent::init();
     if (!Permission::check('ADMIN')) {
         return Security::permissionFailure();
     }
     TestRunner::use_test_manifest();
 }
Пример #2
0
 /**
  * @return Array
  */
 public static function get_all_tests()
 {
     require_once 'sapphire/tests/bootstrap.php';
     TestRunner::use_test_manifest();
     $tests = ClassInfo::subclassesFor('SapphireTest');
     array_shift($tests);
     return $tests;
 }
 /**
  * Loads kernel file.
  *
  * @param ContainerBuilder $container
  */
 public function process(ContainerBuilder $container)
 {
     // Connect to database and build manifest
     $frameworkPath = $container->getParameter('behat.silverstripe_extension.framework_path');
     $_GET['flush'] = 1;
     require_once $frameworkPath . '/core/Core.php';
     \TestRunner::use_test_manifest();
     unset($_GET['flush']);
     // Remove the error handler so that PHPUnit can add its own
     restore_error_handler();
 }
Пример #4
0
    }
    foreach ($args as $arg) {
        if (strpos($arg, '=') == false) {
            $_GET['args'][] = $arg;
        } else {
            $newItems = array();
            parse_str(substr($arg, 0, 2) == '--' ? substr($arg, 2) : $arg, $newItems);
            $_GET = array_merge($_GET, $newItems);
        }
    }
    $_REQUEST = array_merge($_REQUEST, $_GET);
}
// Connect to database
require_once $frameworkPath . '/core/Core.php';
require_once $frameworkPath . '/tests/FakeController.php';
global $databaseConfig;
DB::connect($databaseConfig);
// Now set a fake REQUEST_URI
$_SERVER['REQUEST_URI'] = BASE_URL . '/dev';
// Fake a session
$_SESSION = null;
// Prepare manifest autoloader
$controller = new FakeController();
// Get test manifest
TestRunner::use_test_manifest();
SapphireTest::set_is_running_test(true);
// Remove the error handler so that PHPUnit can add its own
restore_error_handler();
if (!isset($_GET['flush']) || !$_GET['flush']) {
    Debug::message("WARNING: Manifest not flushed. " . "Add flush=1 as an argument to discover new classes or files.\n", false);
}