Issue #3193163 by mondrake, longwave: Deprecate AssertLegacyTrait::verbose and remove its usage

merge-requests/4973/head
Alex Pott 2021-02-09 16:09:11 +00:00
parent 82c63a2a99
commit 33700d0162
No known key found for this signature in database
GPG Key ID: 31905460D4A69276
21 changed files with 28 additions and 96 deletions

View File

@ -149,8 +149,14 @@ trait AssertMailTrait {
*
* @param int $count
* Optional number of emails to output.
*
* @deprecated in drupal:9.2.0 and is removed from drupal:10.0.0. Use
* dump() instead.
*
* @see https://www.drupal.org/node/3197514
*/
protected function verboseEmail($count = 1) {
@trigger_error('AssertMailTrait::verboseEmail() is deprecated in drupal:9.2.0 and is removed from drupal:10.0.0. Use dump() instead. See https://www.drupal.org/node/3197514', E_USER_DEPRECATED);
$mails = $this->getMails();
for ($i = count($mails) - 1; $i >= count($mails) - $count && $i >= 0; $i--) {
$mail = $mails[$i];

View File

@ -161,7 +161,6 @@ class CommentAdminViewTest extends ViewsKernelTestBase {
$executable = Views::getView('comment');
$build = $executable->preview($display_id);
$this->setRawContent($renderer->renderRoot($build));
$this->verbose($this->getRawContent());
// Assert the exposed filters on the admin page.
$this->assertField('subject');
@ -178,7 +177,6 @@ class CommentAdminViewTest extends ViewsKernelTestBase {
$executable->setExposedInput(['subject' => 'Anonymous']);
$build = $executable->preview($display_id);
$this->setRawContent($renderer->renderRoot($build));
$this->verbose($this->getRawContent());
$elements = $this->cssSelect('input[type="checkbox"]');
$this->assertCount(1, $elements, 'Only anonymous comment is visible.');
@ -189,7 +187,6 @@ class CommentAdminViewTest extends ViewsKernelTestBase {
$executable->setExposedInput(['subject' => 'My comment']);
$build = $executable->preview($display_id);
$this->setRawContent($renderer->renderRoot($build));
$this->verbose($this->getRawContent());
$elements = $this->cssSelect('input[type="checkbox"]');
$this->assertCount(1, $elements, 'Only admin comment is visible.');
@ -201,7 +198,6 @@ class CommentAdminViewTest extends ViewsKernelTestBase {
$executable->setExposedInput(['author_name' => 'barry']);
$build = $executable->preview($display_id);
$this->setRawContent($renderer->renderRoot($build));
$this->verbose($this->getRawContent());
$elements = $this->cssSelect('input[type="checkbox"]');
$this->assertCount(1, $elements, 'Only anonymous comment is visible.');
@ -213,7 +209,6 @@ class CommentAdminViewTest extends ViewsKernelTestBase {
$executable->setExposedInput(['author_name' => $this->adminUser->label()]);
$build = $executable->preview($display_id);
$this->setRawContent($renderer->renderRoot($build));
$this->verbose($this->getRawContent());
$elements = $this->cssSelect('input[type="checkbox"]');
$this->assertCount(1, $elements, 'Only admin comment is visible.');
@ -225,7 +220,6 @@ class CommentAdminViewTest extends ViewsKernelTestBase {
$executable->setExposedInput(['langcode' => '***LANGUAGE_site_default***']);
$build = $executable->preview($display_id);
$this->setRawContent($renderer->renderRoot($build));
$this->verbose($this->getRawContent());
$elements = $this->cssSelect('input[type="checkbox"]');
$this->assertCount(2, $elements, 'Both comments are visible.');
@ -260,7 +254,6 @@ class CommentAdminViewTest extends ViewsKernelTestBase {
$executable->setExposedInput(['langcode' => 'ur']);
$build = $executable->preview($display_id);
$this->setRawContent($renderer->renderRoot($build));
$this->verbose($this->getRawContent());
$elements = $this->cssSelect('input[type="checkbox"]');
$this->assertCount(2, $elements, 'Both comments are visible.');

View File

@ -149,7 +149,6 @@ class CommentUserNameTest extends ViewsKernelTestBase {
$executable = Views::getView($view_id);
$build = $executable->preview();
$this->setRawContent($renderer->renderRoot($build));
$this->verbose($this->getRawContent());
$this->assertLink('My comment title');
$this->assertLink('Anonymous comment title');
@ -174,7 +173,6 @@ class CommentUserNameTest extends ViewsKernelTestBase {
$this->assertNoLink($this->adminUser->label());
// Note: External users aren't pointing to drupal user profiles.
$this->assertLink('barry (not verified)');
$this->verbose($this->getRawContent());
$this->assertLink('My comment title');
$this->assertLink('Anonymous comment title');
}

View File

@ -106,7 +106,6 @@ class SeparatorTranslationTest extends KernelTestBase {
$display = EntityViewDisplay::collectRenderDisplay($entity, 'default');
$build = $display->build($entity);
$output = $this->container->get('renderer')->renderRoot($build);
$this->verbose($output);
$this->assertStringContainsString('UNTRANSLATED', (string) $output);
// Translate the separator.
@ -123,7 +122,6 @@ class SeparatorTranslationTest extends KernelTestBase {
$display = EntityViewDisplay::collectRenderDisplay($entity, 'default');
$build = $display->build($entity);
$output = $this->container->get('renderer')->renderRoot($build);
$this->verbose($output);
$this->assertStringContainsString('NL_TRANSLATED!', (string) $output);
}

View File

@ -68,17 +68,14 @@ class FilterAPITest extends EntityKernelTestBase {
$expected_filter_text_without_html_generators = "Text with evil content and a URL: https://www.drupal.org!";
$actual_filtered_text = check_markup($text, 'filtered_html', '', []);
$this->verbose("Actual:<pre>$actual_filtered_text</pre>Expected:<pre>$expected_filtered_text</pre>");
$this->assertEqual($expected_filtered_text, $actual_filtered_text, 'Expected filter result.');
$actual_filtered_text_without_html_generators = check_markup($text, 'filtered_html', '', [FilterInterface::TYPE_MARKUP_LANGUAGE]);
$this->verbose("Actual:<pre>$actual_filtered_text_without_html_generators</pre>Expected:<pre>$expected_filter_text_without_html_generators</pre>");
$this->assertEqual($expected_filter_text_without_html_generators, $actual_filtered_text_without_html_generators, 'Expected filter result when skipping FilterInterface::TYPE_MARKUP_LANGUAGE filters.');
// Related to @see FilterSecurityTest.php/testSkipSecurityFilters(), but
// this check focuses on the ability to filter multiple filter types at once.
// Drupal core only ships with these two types of filters, so this is the
// most extensive test possible.
$actual_filtered_text_without_html_generators = check_markup($text, 'filtered_html', '', [FilterInterface::TYPE_HTML_RESTRICTOR, FilterInterface::TYPE_MARKUP_LANGUAGE]);
$this->verbose("Actual:<pre>$actual_filtered_text_without_html_generators</pre>Expected:<pre>$expected_filter_text_without_html_generators</pre>");
$this->assertEqual($expected_filter_text_without_html_generators, $actual_filtered_text_without_html_generators, 'Expected filter result when skipping FilterInterface::TYPE_MARKUP_LANGUAGE filters, even when trying to disable filters of the FilterInterface::TYPE_HTML_RESTRICTOR type.');
}

View File

@ -389,10 +389,7 @@ class FilterKernelTest extends KernelTestBase {
$limit = max(ini_get('pcre.backtrack_limit'), ini_get('pcre.recursion_limit'));
$source = $this->randomMachineName($limit);
$result = _filter_autop($source);
$success = $this->assertEqual($result, '<p>' . $source . "</p>\n", 'Line break filter can process very long strings.');
if (!$success) {
$this->verbose("\n" . $source . "\n<hr />\n" . $result);
}
$this->assertEqual($result, '<p>' . $source . "</p>\n", 'Line break filter can process very long strings.');
}
/**

View File

@ -841,9 +841,7 @@ class LinkFieldTest extends BrowserTestBase {
->getViewDisplay($entity->getEntityTypeId(), $entity->bundle(), $view_mode);
$content = $display->build($entity);
$output = \Drupal::service('renderer')->renderRoot($content);
$output = (string) $output;
$this->verbose($output);
return $output;
return (string) $output;
}
}

View File

@ -33,9 +33,7 @@ class LocaleUpdateDevelopmentReleaseTest extends BrowserTestBase {
public function testLocaleUpdateDevelopmentRelease() {
$projects = locale_translation_build_projects();
$this->verbose($projects['drupal']->info['version']);
$this->assertEqual('8.0.x', $projects['drupal']->info['version'], 'The branch of the core dev release.');
$this->verbose($projects['contrib']->info['version']);
$this->assertEqual('12.x-10.x', $projects['contrib']->info['version'], 'The branch of the contrib module dev release.');
}

View File

@ -173,8 +173,6 @@ class SearchExcerptTest extends KernelTestBase {
$text = str_repeat($lorem3, 20) . ' ' . $lorem1;
$result = $this->doSearchExcerpt('Lìbêró', $text);
$this->assertStringContainsString('<strong>libero</strong>', $result, 'Search excerpt works with caps and accents in longer text with whitespace');
$this->verbose('Elapsed time: ' . (microtime(TRUE) - $start_time));
}
/**

View File

@ -58,11 +58,6 @@ class HtmlToTextTest extends BrowserTestBase {
$message .= ' (' . $tested_tags . ')';
$result = MailFormatHelper::htmlToText($html, $allowed_tags);
$this->assertEqual($text, $result, Html::escape($message));
$verbose = 'html = <pre>' . $this->stringToHtml($html)
. '</pre><br />result = <pre>' . $this->stringToHtml($result)
. '</pre><br />expected = <pre>' . $this->stringToHtml($text)
. '</pre>';
$this->verbose($verbose);
}
/**
@ -239,25 +234,11 @@ class HtmlToTextTest extends BrowserTestBase {
EOT;
$input = str_replace(["\r", "\n"], '', $input);
$output = MailFormatHelper::htmlToText($input);
$pass = $this->assertNotRegExp('/\][^\n]*\[/s', $output, 'Block-level HTML tags should force newlines');
if (!$pass) {
$this->verbose($this->stringToHtml($output));
}
$this->assertNotRegExp('/\][^\n]*\[/s', $output, 'Block-level HTML tags should force newlines');
$output_upper = mb_strtoupper($output);
$upper_input = mb_strtoupper($input);
$upper_output = MailFormatHelper::htmlToText($upper_input);
$pass = $this->assertEqual(
$upper_output,
$output_upper,
'Tag recognition should be case-insensitive'
);
if (!$pass) {
$this->verbose(
$upper_output
. '<br />should be equal to <br />'
. $output_upper
);
}
$this->assertEquals($output_upper, $upper_output, 'Tag recognition should be case-insensitive');
}
/**

View File

@ -351,7 +351,6 @@ class TrackerTest extends BrowserTestBase {
// on the tracker page.
// It's almost certainly too brittle.
$pattern = '/' . preg_quote($node_one->getTitle()) . '.+' . preg_quote($node_two->getTitle()) . '/s';
$this->verbose($pattern);
// Verify that the most recent comment on node appears at the top of
// tracker.
$this->assertSession()->responseMatches($pattern);

View File

@ -126,12 +126,6 @@ trait ViewResultAssertionTrait {
$expected_result[$key] = $row;
}
$this->verbose('<pre style="white-space: pre-wrap;">'
. "\n\nQuery:\n" . $view->build_info['query']
. "\n\nQuery arguments:\n" . var_export($view->build_info['query']->getArguments(), TRUE)
. "\n\nActual result:\n" . var_export($result, TRUE)
. "\n\nExpected result:\n" . var_export($expected_result, TRUE));
// Reset the numbering of the arrays.
$result = array_values($result);
$expected_result = array_values($expected_result);

View File

@ -4,7 +4,6 @@ namespace Drupal\Tests\views\Functional;
use Behat\Mink\Exception\ElementNotFoundException;
use Drupal\Core\Database\Database;
use Drupal\Core\Database\Query\SelectInterface;
use Drupal\Tests\BrowserTestBase;
use Drupal\views\Tests\ViewResultAssertionTrait;
use Drupal\views\Tests\ViewTestData;
@ -114,7 +113,7 @@ abstract class ViewTestBase extends BrowserTestBase {
}
/**
* Executes a view with debugging.
* Executes a view.
*
* @param \Drupal\views\ViewExecutable $view
* The view object.
@ -127,11 +126,6 @@ abstract class ViewTestBase extends BrowserTestBase {
$view->setDisplay();
$view->preExecute($args);
$view->execute();
$verbose_message = '<pre>Executed view: ' . ((string) $view->build_info['query']) . '</pre>';
if ($view->build_info['query'] instanceof SelectInterface) {
$verbose_message .= '<pre>Arguments: ' . print_r($view->build_info['query']->getArguments(), TRUE) . '</pre>';
}
$this->verbose($verbose_message);
}
/**

View File

@ -3,7 +3,6 @@
namespace Drupal\Tests\views\Kernel;
use Drupal\Core\Database\Database;
use Drupal\Core\Database\Query\SelectInterface;
use Drupal\KernelTests\KernelTestBase;
use Drupal\views\Tests\ViewResultAssertionTrait;
use Drupal\views\Tests\ViewTestData;
@ -118,7 +117,7 @@ abstract class ViewsKernelTestBase extends KernelTestBase {
}
/**
* Executes a view with debugging.
* Executes a view.
*
* @param \Drupal\views\ViewExecutable $view
* The view object.
@ -129,11 +128,6 @@ abstract class ViewsKernelTestBase extends KernelTestBase {
$view->setDisplay();
$view->preExecute($args);
$view->execute();
$verbose_message = '<pre>Executed view: ' . ((string) $view->build_info['query']) . '</pre>';
if ($view->build_info['query'] instanceof SelectInterface) {
$verbose_message .= '<pre>Arguments: ' . print_r($view->build_info['query']->getArguments(), TRUE) . '</pre>';
}
$this->verbose($verbose_message);
}
/**

View File

@ -885,11 +885,6 @@ trait AssertContentTrait {
$output = (string) $renderer->executeInRenderContext(new RenderContext(), function () use ($callback, $variables) {
return \Drupal::theme()->render($callback, $variables);
});
$this->verbose(
'<hr />' . 'Result:' . '<pre>' . Html::escape(var_export($output, TRUE)) . '</pre>'
. '<hr />' . 'Expected:' . '<pre>' . Html::escape(var_export($expected, TRUE)) . '</pre>'
. '<hr />' . $output
);
if (!$message) {
$message = '%callback rendered correctly.';
}

View File

@ -113,8 +113,14 @@ trait AssertLegacyTrait {
/**
* @see \Drupal\simpletest\TestBase::verbose()
*
* @deprecated in drupal:9.2.0 and is removed from drupal:10.0.0. Use
* dump() instead.
*
* @see https://www.drupal.org/node/3197514
*/
protected function verbose($message) {
@trigger_error('AssertLegacyTrait::verbose() is deprecated in drupal:9.2.0 and is removed from drupal:10.0.0. Use dump() instead. See https://www.drupal.org/node/3197514', E_USER_DEPRECATED);
if (in_array('--debug', $_SERVER['argv'], TRUE)) {
// Write directly to STDOUT to not produce unexpected test output.
// The STDOUT stream does not obey output buffering.

View File

@ -271,7 +271,6 @@ class ConfigCRUDTest extends KernelTestBase {
$name = 'config_test.types';
$config = $this->config($name);
$original_content = file_get_contents(drupal_get_path('module', 'config_test') . '/' . InstallStorage::CONFIG_INSTALL_DIRECTORY . "/$name.yml");
$this->verbose('<pre>' . $original_content . "\n" . var_export($storage->read($name), TRUE));
// Verify variable data types are intact.
$data = [
@ -297,7 +296,6 @@ class ConfigCRUDTest extends KernelTestBase {
$this->assertSame($data, $config->get());
// Assert the data against the file storage.
$this->assertSame($data, $storage->read($name));
$this->verbose('<pre>' . $name . var_export($storage->read($name), TRUE));
// Set data using config::setData().
$config->setData($data)->save();

View File

@ -37,13 +37,6 @@ class RenderElementTypesTest extends KernelTestBase {
*/
protected function assertElements(array $elements, $expected_html, $message) {
$actual_html = (string) \Drupal::service('renderer')->renderRoot($elements);
$out = '<table><tr>';
$out .= '<td valign="top"><pre>' . Html::escape($expected_html) . '</pre></td>';
$out .= '<td valign="top"><pre>' . Html::escape($actual_html) . '</pre></td>';
$out .= '</tr></table>';
$this->verbose($out);
$this->assertSame($expected_html, $actual_html, Html::escape($message));
}

View File

@ -2,7 +2,6 @@
namespace Drupal\KernelTests\Core\Render\Element;
use Drupal\Component\Utility\Html;
use Drupal\Core\Utility\TableSort;
use Drupal\KernelTests\KernelTestBase;
use Symfony\Component\HttpFoundation\Request;
@ -34,7 +33,6 @@ class TableSortExtenderTest extends KernelTestBase {
$request->query->replace([]);
\Drupal::getContainer()->get('request_stack')->push($request);
$ts = TableSort::getContextFromRequest($headers, $request);
$this->verbose(strtr('$ts: <pre>!ts</pre>', ['!ts' => Html::escape(var_export($ts, TRUE))]));
$this->assertEqual($expected_ts, $ts, 'Simple table headers sorted correctly.');
// Test with simple table headers plus $_GET parameters that should _not_
@ -47,7 +45,6 @@ class TableSortExtenderTest extends KernelTestBase {
]);
\Drupal::getContainer()->get('request_stack')->push($request);
$ts = TableSort::getContextFromRequest($headers, $request);
$this->verbose(strtr('$ts: <pre>!ts</pre>', ['!ts' => Html::escape(var_export($ts, TRUE))]));
$this->assertEqual($expected_ts, $ts, 'Simple table headers plus non-overriding $_GET parameters sorted correctly.');
// Test with simple table headers plus $_GET parameters that _should_
@ -63,7 +60,6 @@ class TableSortExtenderTest extends KernelTestBase {
$expected_ts['sort'] = 'desc';
$expected_ts['query'] = ['alpha' => 'beta'];
$ts = TableSort::getContextFromRequest($headers, $request);
$this->verbose(strtr('$ts: <pre>!ts</pre>', ['!ts' => Html::escape(var_export($ts, TRUE))]));
$this->assertEqual($expected_ts, $ts, 'Simple table headers plus $_GET parameters sorted correctly.');
// Test complex table headers.
@ -95,7 +91,6 @@ class TableSortExtenderTest extends KernelTestBase {
'sort' => 'desc',
'query' => [],
];
$this->verbose(strtr('$ts: <pre>!ts</pre>', ['!ts' => Html::escape(var_export($ts, TRUE))]));
$this->assertEqual($expected_ts, $ts, 'Complex table headers sorted correctly.');
// Test complex table headers plus $_GET parameters that should _not_
@ -114,7 +109,6 @@ class TableSortExtenderTest extends KernelTestBase {
'sort' => 'asc',
'query' => [],
];
$this->verbose(strtr('$ts: <pre>!ts</pre>', ['!ts' => Html::escape(var_export($ts, TRUE))]));
$this->assertEqual($expected_ts, $ts, 'Complex table headers plus non-overriding $_GET parameters sorted correctly.');
// Test complex table headers plus $_GET parameters that _should_
@ -135,7 +129,6 @@ class TableSortExtenderTest extends KernelTestBase {
'query' => ['alpha' => 'beta'],
];
$ts = TableSort::getContextFromRequest($headers, $request);
$this->verbose(strtr('$ts: <pre>!ts</pre>', ['!ts' => Html::escape(var_export($ts, TRUE))]));
$this->assertEquals($expected_ts, $ts, 'Complex table headers plus $_GET parameters sorted correctly.');
// Test the initial_click_sort parameter.
@ -174,14 +167,12 @@ class TableSortExtenderTest extends KernelTestBase {
]);
\Drupal::getContainer()->get('request_stack')->push($request);
$ts = TableSort::getContextFromRequest($headers, $request);
$this->verbose(strtr('$ts: <pre>!ts</pre>', ['!ts' => Html::escape(var_export($ts, TRUE))]));
$expected_ts = [
'name' => '1',
'sql' => 'one',
'sort' => 'desc',
'query' => [],
];
$this->verbose(strtr('$ts: <pre>!ts</pre>', ['!ts' => Html::escape(var_export($ts, TRUE))]));
$this->assertEquals($expected_ts, $ts, 'Complex table headers using the initial_click_sort parameter are sorted correctly.');
// Test that if the initial_click_sort parameter is not defined, the default
@ -198,7 +189,6 @@ class TableSortExtenderTest extends KernelTestBase {
'sort' => 'asc',
'query' => [],
];
$this->verbose(strtr('$ts: <pre>!ts</pre>', ['!ts' => Html::escape(var_export($ts, TRUE))]));
$this->assertEquals($expected_ts, $ts, 'Complex table headers without using the initial_click_sort parameter are sorted correctly.');
// Test that if the initial_click_sort parameter is defined, and the sort
@ -215,7 +205,6 @@ class TableSortExtenderTest extends KernelTestBase {
'sort' => 'asc',
'query' => [],
];
$this->verbose(strtr('$ts: <pre>!ts</pre>', ['!ts' => Html::escape(var_export($ts, TRUE))]));
$this->assertEquals($expected_ts, $ts, 'Complex table headers using the initial_click_sort and sort parameters are sorted correctly.');
// Test that if the initial_click_sort parameter is defined and the value
@ -232,7 +221,6 @@ class TableSortExtenderTest extends KernelTestBase {
'sort' => 'asc',
'query' => [],
];
$this->verbose(strtr('$ts: <pre>!ts</pre>', ['!ts' => Html::escape(var_export($ts, TRUE))]));
$this->assertEquals($expected_ts, $ts, 'Complex table headers with the initial_click_sort set as ASC are sorted correctly.');
// Tests that if the initial_click_sort is defined with a non expected value
@ -249,7 +237,6 @@ class TableSortExtenderTest extends KernelTestBase {
'sort' => 'foo',
'query' => [],
];
$this->verbose(strtr('$ts: <pre>!ts</pre>', ['!ts' => Html::escape(var_export($ts, TRUE))]));
$this->assertEquals($expected_ts, $ts, 'Complex table headers with the initial_click_sort set as foo are sorted correctly.');
}

View File

@ -5,7 +5,6 @@ namespace Drupal\KernelTests;
use Drupal\Component\FileCache\ApcuFileCacheBackend;
use Drupal\Component\FileCache\FileCache;
use Drupal\Component\FileCache\FileCacheFactory;
use Drupal\Component\Utility\Html;
use Drupal\Core\Config\Development\ConfigSchemaChecker;
use Drupal\Core\Database\Database;
use Drupal\Core\DependencyInjection\ContainerBuilder;
@ -901,7 +900,6 @@ abstract class KernelTestBase extends TestCase implements ServiceProviderInterfa
// Glean the content from the response object.
$content = $response->getContent();
$this->setRawContent($content);
$this->verbose('<pre style="white-space: pre-wrap">' . Html::escape($content));
return $content;
}

View File

@ -386,6 +386,16 @@ class KernelTestBaseTest extends KernelTestBase {
$this->assertNotIdentical('foo', 'bar');
}
/**
* Tests the deprecation of AssertLegacyTrait::verbose().
*
* @group legacy
*/
public function testVerbose() {
$this->expectDeprecation('AssertLegacyTrait::verbose() is deprecated in drupal:9.2.0 and is removed from drupal:10.0.0. Use dump() instead. See https://www.drupal.org/node/3197514');
$this->verbose('The show must go on');
}
/**
* Tests the deprecation of ::installSchema with the tables key_value(_expire).
*