Beispiel #1
0
 /**
  * Lists the available steps definitions
  *
  * @param string $type
  * @param string $component
  * @param string $filter
  * @return array System steps or empty array if case there are no steps
  */
 public static function stepsdefinitions($type, $component, $filter)
 {
     // We don't require the test environment to be enabled to list the steps definitions
     // so test writers can more easily set up the environment.
     behat_command::behat_setup_problem();
     // The loaded steps depends on the component specified.
     behat_config_manager::update_config_file($component, false);
     // The Moodle\BehatExtension\HelpPrinter\MoodleDefinitionsPrinter will parse this search format.
     if ($type) {
         $filter .= '&&' . $type;
     }
     if ($filter) {
         $filteroption = ' -d "' . $filter . '"';
     } else {
         $filteroption = ' -di';
     }
     // Get steps definitions from Behat.
     $options = ' --config="' . behat_config_manager::get_steps_list_config_filepath() . '" ' . $filteroption;
     list($steps, $code) = behat_command::run($options);
     return $steps;
 }
Beispiel #2
0
 /**
  * Returns the status of the behat test environment
  *
  * @return int Error code
  */
 public static function get_behat_status()
 {
     if (!defined('BEHAT_UTIL')) {
         throw new coding_exception('This method can be only used by Behat CLI tool');
     }
     // Checks the behat set up and the PHP version, returning an error code if something went wrong.
     if ($errorcode = behat_command::behat_setup_problem()) {
         return $errorcode;
     }
     // Check that test environment is correctly set up, stops execution.
     self::test_environment_problem();
 }