diff --git a/core/.phpstan-baseline.php b/core/.phpstan-baseline.php index 1f1aae4f65955525cdd94050abb04d3019749aee..bd693e8a5126bf3dd7af3ecd2c4c646b857831b3 100644 --- a/core/.phpstan-baseline.php +++ b/core/.phpstan-baseline.php @@ -2245,18 +2245,6 @@ 'count' => 1, 'path' => __DIR__ . '/tests/Drupal/Tests/Core/Plugin/TestPluginManager.php', ]; -$ignoreErrors[] = [ - 'message' => '#^Call to deprecated method expectError\\(\\) of class PHPUnit\\\\Framework\\\\TestCase\\: -https\\://github\\.com/sebastianbergmann/phpunit/issues/5062$#', - 'count' => 1, - 'path' => __DIR__ . '/tests/Drupal/Tests/Core/Render/ElementTest.php', -]; -$ignoreErrors[] = [ - 'message' => '#^Call to deprecated method expectErrorMessage\\(\\) of class PHPUnit\\\\Framework\\\\TestCase\\: -https\\://github\\.com/sebastianbergmann/phpunit/issues/5062$#', - 'count' => 1, - 'path' => __DIR__ . '/tests/Drupal/Tests/Core/Render/ElementTest.php', -]; $ignoreErrors[] = [ 'message' => '#^Call to deprecated method expectWarning\\(\\) of class PHPUnit\\\\Framework\\\\TestCase\\: https\\://github\\.com/sebastianbergmann/phpunit/issues/5062$#', diff --git a/core/lib/Drupal/Core/Render/Element.php b/core/lib/Drupal/Core/Render/Element.php index ae329e8aee5b00457b4270f1907705b71141e51f..f8f61919c00ae9bc06f8a6fac4faab70d89c2d6c 100644 --- a/core/lib/Drupal/Core/Render/Element.php +++ b/core/lib/Drupal/Core/Render/Element.php @@ -2,7 +2,6 @@ namespace Drupal\Core\Render; -use Drupal\Component\Render\FormattableMarkup; use Drupal\Core\Access\AccessResultInterface; /** @@ -92,16 +91,10 @@ public static function children(array &$elements, $sort = FALSE) { // the insertion order. $child_weights[$key] = floor($weight * 1000) + $i / $count; } - // Only trigger an error if the value is not null. + // Only trigger an exception if the value is not null. // @see https://www.drupal.org/node/1283892 elseif (isset($value)) { - trigger_error(new FormattableMarkup( - '"@key" is an invalid render array key. Value should be an array but got a @type', - [ - '@key' => $key, - '@type' => gettype($value), - ] - ), E_USER_ERROR); + throw new \InvalidArgumentException(sprintf('"%s" is an invalid render array key. Value should be an array but got a %s.', $key, gettype($value))); } } $i++; diff --git a/core/tests/Drupal/Tests/Core/Render/ElementTest.php b/core/tests/Drupal/Tests/Core/Render/ElementTest.php index bc1b0217c6deb6abeb5d20d5ef1d267a6582ee41..eba2dd726845e4058f98ee7eef641990da38fa10 100644 --- a/core/tests/Drupal/Tests/Core/Render/ElementTest.php +++ b/core/tests/Drupal/Tests/Core/Render/ElementTest.php @@ -108,8 +108,8 @@ public function testInvalidChildren() { $element = [ 'foo' => 'bar', ]; - $this->expectError(); - $this->expectErrorMessage('"foo" is an invalid render array key. Value should be an array but got a string'); + $this->expectException(\InvalidArgumentException::class); + $this->expectExceptionMessage('"foo" is an invalid render array key. Value should be an array but got a string.'); Element::children($element); }