You are here

protected function DrupalTestCase::getAssertionCall in SimpleTest 7

Same name and namespace in other branches
  1. 6.2 drupal_web_test_case.php \DrupalTestCase::getAssertionCall()
  2. 7.2 drupal_web_test_case.php \DrupalTestCase::getAssertionCall()

Cycles through backtrace until the first non-assertion method is found.

Return value

Array representing the true caller.

1 call to DrupalTestCase::getAssertionCall()
DrupalTestCase::assert in ./drupal_web_test_case.php
Internal helper: stores the assert.

File

./drupal_web_test_case.php, line 186

Class

DrupalTestCase
Base class for Drupal tests.

Code

protected function getAssertionCall() {
  $backtrace = debug_backtrace();

  // The first element is the call. The second element is the caller.
  // We skip calls that occurred in one of the methods of our base classes
  // or in an assertion function.
  while (($caller = $backtrace[1]) && (isset($caller['class']) && isset($this->skipClasses[$caller['class']]) || substr($caller['function'], 0, 6) == 'assert')) {

    // We remove that call.
    array_shift($backtrace);
  }
  return _drupal_get_last_caller($backtrace);
}