DBLogTestCase::testDBLogAddAndClear

7 dblog.test protected DBLogTestCase::testDBLogAddAndClear()
8 dblog.test protected DBLogTestCase::testDBLogAddAndClear()

Login an admin user, create dblog event, and test clearing dblog functionality through the admin interface.

File

modules/dblog/dblog.test, line 380
Tests for dblog.module.

Code

protected function testDBLogAddAndClear() {
  global $base_root;
  // Get a count of how many watchdog entries there are.
  $count = db_query('SELECT COUNT(*) FROM {watchdog}')->fetchField();
  $log = array(
    'type' => 'custom', 
    'message' => 'Log entry added to test the doClearTest clear down.', 
    'variables' => array(), 
    'severity' => WATCHDOG_NOTICE, 
    'link' => NULL, 
    'user' => $this->big_user, 
    'uid' => isset($this->big_user->uid) ? $this->big_user->uid : 0, 
    'request_uri' => $base_root . request_uri(), 
    'referer' => $_SERVER['HTTP_REFERER'], 
    'ip' => ip_address(), 
    'timestamp' => REQUEST_TIME,
  );
  // Add a watchdog entry.
  dblog_watchdog($log);
  // Make sure the table count has actually incremented.
  $this->assertEqual($count + 1, db_query('SELECT COUNT(*) FROM {watchdog}')->fetchField(), t('dblog_watchdog() added an entry to the dblog :count', array(':count' => $count)));
  // Login the admin user.
  $this->drupalLogin($this->big_user);
  // Now post to clear the db table.
  $this->drupalPost('admin/reports/dblog', array(), t('Clear log messages'));
  // Count rows in watchdog that previously related to the deleted user.
  $count = db_query('SELECT COUNT(*) FROM {watchdog}')->fetchField();
  $this->assertEqual($count, 0, t('DBLog contains :count records after a clear.', array(':count' => $count)));
}
Login or register to post comments