public function SimpletestResultsForm::submitForm

Form submission handler.

Parameters

array $form: An associative array containing the structure of the form.

array $form_state: An associative array containing the current state of the form.

Overrides FormInterface::submitForm

File

drupal/core/modules/simpletest/lib/Drupal/simpletest/Form/SimpletestResultsForm.php, line 238
Contains \Drupal\simpletest\Form\SimpletestResultsForm.

Class

SimpletestResultsForm
Test results form for $test_id.

Namespace

Drupal\simpletest\Form

Code

public function submitForm(array &$form, array &$form_state) {
  $pass = $form_state['values']['filter_pass'] ? explode(',', $form_state['values']['filter_pass']) : array();
  $fail = $form_state['values']['filter_fail'] ? explode(',', $form_state['values']['filter_fail']) : array();
  if ($form_state['values']['filter'] == 'all') {
    $classes = array_merge($pass, $fail);
  }
  elseif ($form_state['values']['filter'] == 'pass') {
    $classes = $pass;
  }
  else {
    $classes = $fail;
  }
  if (!$classes) {
    $form_state['redirect'] = 'admin/config/development/testing';
    return;
  }
  $form_execute = array();
  $form_state_execute = array(
    'values' => array(),
  );
  foreach ($classes as $class) {
    $form_state_execute['values'][$class] = 1;
  }

  // Submit the simpletest test form to rerun the tests.
  $simpletest_test_form = new SimpletestTestForm();
  $simpletest_test_form
    ->submitForm($form_execute, $form_state_execute);
  $form_state['redirect'] = $form_state_execute['redirect'];
}