1 common.test protected CommonSimpleTestErrorCollectorTestCase::error($message = '', $group = 'Other', array $caller = NULL)

Error handler that collects errors in an array.

This test class is trying to verify that simpletest correctly sees errors and warnings. However, it can't generate errors and warnings that propagate up to the testing framework itself, or these tests would always fail. So, this special copy of error() doesn't propagate the errors up the class hierarchy. It just stuffs them into a protected collectedErrors array for various assertions to inspect.

Overrides BackdropTestCase::error


core/modules/simpletest/tests/common.test, line 2636
Tests for common.inc functionality.


Tests SimpleTest error and exception collector.


protected function error($message = '', $group = 'Other', array $caller = NULL) {
  // Due to a WTF elsewhere, simpletest treats debug() and verbose()
  // messages as if they were an 'error'. But, we don't want to collect
  // those here. This function just wants to collect the real errors (PHP
  // notices, PHP fatal errors, etc.), and let all the 'errors' from the
  // 'User notice' group bubble up to the parent classes to be handled (and
  // eventually displayed) as normal.
  if ($group == 'User notice') {
    parent::error($message, $group, $caller);
  // Everything else should be collected but not propagated.
  else {
    $this->collectedErrors[] = array(
      'message' => $message,
      'group' => $group,
      'caller' => $caller