You are here

public static function DrupalTestCase::insertAssert in SimpleTest 7

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

Store an assertion from outside the testing context.

This is useful for inserting assertions that can only be recorded after the test case has been destroyed, such as PHP fatal errors. The caller information is not automatically gathered since the caller is most likely inserting the assertion on behalf of other code. In all other respects the method behaves just like DrupalTestCase::assert() in terms of storing the assertion.

See also

DrupalTestCase::assert()

1 call to DrupalTestCase::insertAssert()
simpletest_log_read in ./simpletest.module
Read the error log and report any errors as assertion failures.

File

./drupal_web_test_case.php, line 152

Class

DrupalTestCase
Base class for Drupal tests.

Code

public static function insertAssert($test_id, $test_class, $status, $message = '', $group = 'Other', array $caller = array()) {

  // Convert boolean status to string status.
  if (is_bool($status)) {
    $status = $status ? 'pass' : 'fail';
  }
  $caller += array(
    'function' => t('Unknown'),
    'line' => 0,
    'file' => t('Unknown'),
  );
  $assertion = array(
    'test_id' => $test_id,
    'test_class' => $test_class,
    'status' => $status,
    'message' => $message,
    'message_group' => $group,
    'function' => $caller['function'],
    'line' => $caller['line'],
    'file' => $caller['file'],
  );
  db_insert('simpletest')
    ->fields($assertion)
    ->execute();
}