private function DBLogTest::verifyCron

Verifies that cron correctly applies the database log row limit.

Parameters

int $row_limit: The row limit.

1 call to DBLogTest::verifyCron()
DBLogTest::testDBLog in drupal/core/modules/dblog/lib/Drupal/dblog/Tests/DBLogTest.php
Tests Database Logging module functionality through interfaces.

File

drupal/core/modules/dblog/lib/Drupal/dblog/Tests/DBLogTest.php, line 101
Definition of Drupal\dblog\Tests\DBLogTest.

Class

DBLogTest
Tests logging messages to the database.

Namespace

Drupal\dblog\Tests

Code

private function verifyCron($row_limit) {

  // Generate additional log entries.
  $this
    ->generateLogEntries($row_limit + 10);

  // Verify that the database log row count exceeds the row limit.
  $count = db_query('SELECT COUNT(wid) FROM {watchdog}')
    ->fetchField();
  $this
    ->assertTrue($count > $row_limit, format_string('Dblog row count of @count exceeds row limit of @limit', array(
    '@count' => $count,
    '@limit' => $row_limit,
  )));

  // Run a cron job.
  $this
    ->cronRun();

  // Verify that the database log row count equals the row limit plus one
  // because cron adds a record after it runs.
  $count = db_query('SELECT COUNT(wid) FROM {watchdog}')
    ->fetchField();
  $this
    ->assertTrue($count == $row_limit + 1, format_string('Dblog row count of @count equals row limit of @limit plus one', array(
    '@count' => $count,
    '@limit' => $row_limit,
  )));
}