diff --git a/core/modules/simpletest/simpletest.module b/core/modules/simpletest/simpletest.module index 5ad1b39..69cfb5f 100644 --- a/core/modules/simpletest/simpletest.module +++ b/core/modules/simpletest/simpletest.module @@ -83,10 +83,12 @@ function simpletest_theme() { 'simpletest_test_table' => array( 'render element' => 'table', 'file' => 'simpletest.pages.inc', + 'template' => 'simpletest-test-table', ), 'simpletest_result_summary' => array( 'render element' => 'form', 'file' => 'simpletest.pages.inc', + 'template' => 'simpletest-result-summary', ), ); } diff --git a/core/modules/simpletest/simpletest.pages.inc b/core/modules/simpletest/simpletest.pages.inc index 4fb908d..56f601f 100644 --- a/core/modules/simpletest/simpletest.pages.inc +++ b/core/modules/simpletest/simpletest.pages.inc @@ -58,15 +58,15 @@ function simpletest_test_form($form, &$form_state) { } /** - * Returns HTML for a test list generated by simpletest_test_form() into a table. + * Prepares variables for test list table templates. * - * @param $variables + * Default template: simpletest-test-table.html.twig. + * + * @param array $variables * An associative array containing: * - table: A render element representing the table. - * - * @ingroup themeable */ -function theme_simpletest_test_table($variables) { +function template_preprocess_simpletest_test_table(&$variables) { $table = $variables['table']; drupal_add_library('simpletest', 'drupal.simpletest'); @@ -139,15 +139,15 @@ function theme_simpletest_test_table($variables) { // Store test title and description so that checkbox won't render them. $title = $test['#title']; $description = $test['#description']; + unset($test['#description']); $test['#title_display'] = 'invisible'; - unset($test['#description']); // Test name is used to determine what tests to run. $test['#name'] = $test_name; $row[] = array( - 'data' => drupal_render($test), + 'data' => $test, 'class' => array('simpletest-test-select'), ); $row[] = array( @@ -168,12 +168,13 @@ function theme_simpletest_test_table($variables) { // Add js array of settings. drupal_add_js(array('simpleTest' => $js), 'setting'); - if (empty($rows)) { - return '' . t('No tests to display.') . ''; - } - else { - return theme('table', array('header' => $header, 'rows' => $rows, 'attributes' => array('id' => 'simpletest-form-table'))); - } + $variables['table'] = array( + '#type' => 'table', + '#header' => $header, + '#rows' => $rows, + '#empty' => t('No tests to display.'), + '#attributes' => array('id' => 'simpletest-form-table'), + ); } /** @@ -274,7 +275,7 @@ function simpletest_result_form($form, &$form_state, $test_id) { $form['result']['summary']['#' . $assertion->status]++; } $form['result']['results'][$group]['table'] = array( - '#theme' => 'table', + '#type' => 'table', '#header' => $header, '#rows' => $rows, ); @@ -370,17 +371,18 @@ function simpletest_result_form_submit($form, &$form_state) { } /** - * Returns HTML for the summary status of a simpletest result. + * Prepares variables for the simpletest result's summary status templates. * - * @param $variables + * Default template: simpletest-result-summary.html.twig. + * + * @param array $variables * An associative array containing: * - form: A render element representing the form. - * - * @ingroup themeable */ -function theme_simpletest_result_summary($variables) { +function template_preprocess_simpletest_result_summary(&$variables) { $form = $variables['form']; - return '
' . _simpletest_format_summary_line($form) . '
'; + $variables['summary'] = _simpletest_format_summary_line($form); + $variables['status'] = $form['#ok'] ? 'pass' : 'fail'; } /** diff --git a/core/modules/simpletest/templates/simpletest-result-summary.html.twig b/core/modules/simpletest/templates/simpletest-result-summary.html.twig new file mode 100644 index 0000000..e4f298a --- /dev/null +++ b/core/modules/simpletest/templates/simpletest-result-summary.html.twig @@ -0,0 +1,16 @@ +{# +/** + * @file + * Default theme implementation for the content of simpletest result summary. + * + * Available variables: + * - status: Pass or fail of test. + * - summary: Summary info of test. + * + * @see template_preprocess() + * @see template_preprocess_simpletest_result_summary() + * + * @ingroup themeable + */ +#} +
{{ summary }}
diff --git a/core/modules/simpletest/templates/simpletest-test-table.html.twig b/core/modules/simpletest/templates/simpletest-test-table.html.twig new file mode 100644 index 0000000..7c920e6 --- /dev/null +++ b/core/modules/simpletest/templates/simpletest-test-table.html.twig @@ -0,0 +1,15 @@ +{# +/** + * @file + * Default theme implementation for the content of simpletest test table. + * + * Available variables: + * - table: A simpletest table. + * + * @see template_preprocess() + * @see template_preprocess_simpletest_test_table() + * + * @ingroup themeable + */ +#} +{{ table }}