protected function DrupalErrorCollectionUnitTest::error

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 DrupalTestCase::error

File

drupal/modules/simpletest/tests/common.test, line 2594
Tests for common.inc functionality.

Class

DrupalErrorCollectionUnitTest
Tests Simpletest error and exception collector.

Code

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);
  }
  else {
    $this->collectedErrors[] = array(
      'message' => $message,
      'group' => $group,
      'caller' => $caller,
    );
  }
}