protected function DrupalTestCase::getAssertionCall

7.x drupal_web_test_case.php protected 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/modules/simpletest/drupal_web_test_case.php
Internal helper: stores the assert.

File

drupal/modules/simpletest/drupal_web_test_case.php, line 235

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);
}