MDL-37046 behat: Added to standard plugins list
[moodle.git] / admin / tool / behat / cli / util.php
1 <?php
2 // This file is part of Moodle - http://moodle.org/
3 //
4 // Moodle is free software: you can redistribute it and/or modify
5 // it under the terms of the GNU General Public License as published by
6 // the Free Software Foundation, either version 3 of the License, or
7 // (at your option) any later version.
8 //
9 // Moodle is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 // GNU General Public License for more details.
13 //
14 // You should have received a copy of the GNU General Public License
15 // along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
17 /**
18  * CLI tool
19  *
20  * @package    tool_behat
21  * @copyright  2012 David MonllaĆ³
22  * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
23  */
25 define('CLI_SCRIPT', true);
27 require(__DIR__ . '/../../../../config.php');
28 require_once($CFG->libdir . '/clilib.php');
29 require_once($CFG->dirroot . '/' . $CFG->admin . '/tool/behat/locallib.php');
31 // CLI options.
32 list($options, $unrecognized) = cli_get_params(
33     array(
34         'help'    => false,
35         'enable'  => false,
36         'disable' => false,
37     ),
38     array(
39         'h' => 'help'
40     )
41 );
43 $help = "
44 Behat tool
46 Options:
47 --enable Enables test environment and updates tests list
48 --disable Disables test environment
50 -h, --help     Print out this help
52 Example from Moodle root directory:
53 \$ php admin/tool/behat/cli/util.php --enable
55 More info in http://docs.moodle.org/dev/Acceptance_testing#Running_tests
56 ";
58 if (!empty($options['help'])) {
59     echo $help;
60     exit(0);
61 }
63 if ($unrecognized) {
64     $unrecognized = implode("\n  ", $unrecognized);
65     cli_error(get_string('cliunknowoption', 'admin', $unrecognized));
66 }
68 // Run command.
69 if ($options['enable']) {
70     $action = 'enable';
71 } else if ($options['disable']) {
72     $action = 'disable';
73 } else {
74     echo $help;
75     exit(0);
76 }
78 tool_behat::switchenvironment($action);
80 mtrace(get_string('testenvironment' . $action, 'tool_behat'));