Exemplo n.º 1
0
$buildconfig = $options['buildconfig'];
$buildcomponentconfigs = $options['buildcomponentconfigs'];
if ($options['help'] or !$drop and !$install and !$buildconfig and !$buildcomponentconfigs and !$diag) {
    $help = "Various PHPUnit utility functions\n\nOptions:\n--drop         Drop database and dataroot\n--install      Install database\n--diag         Diagnose installation and return error code only\n--run          Execute PHPUnit tests (alternative for standard phpunit binary)\n--buildconfig  Build /phpunit.xml from /phpunit.xml.dist that runs all tests\n--buildcomponentconfigs\n               Build distributed phpunit.xml files for each component\n\n-h, --help     Print out this help\n\nExample:\n\$ php " . phpunit_bootstrap_cli_argument_path('/admin/tool/phpunit/cli/util.php') . " --install\n";
    echo $help;
    exit(0);
}
if ($diag) {
    list($errorcode, $message) = phpunit_util::testing_ready_problem();
    if ($errorcode) {
        phpunit_bootstrap_error($errorcode, $message);
    }
    exit(0);
} else {
    if ($buildconfig) {
        if (phpunit_util::build_config_file()) {
            exit(0);
        } else {
            phpunit_bootstrap_error(PHPUNIT_EXITCODE_CONFIGWARNING, 'Can not create main /phpunit.xml configuration file, verify dirroot permissions');
        }
    } else {
        if ($buildcomponentconfigs) {
            phpunit_util::build_component_config_files();
            exit(0);
        } else {
            if ($drop) {
                // make sure tests do not run in parallel
                phpunit_util::acquire_test_lock();
                phpunit_util::drop_site(true);
                // note: we must stop here because $CFG is messed up and we can not reinstall, sorry
                exit(0);