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

File

modules/simpletest/drupal_web_test_case.php, line 294

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

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.