You are here

public function LogTest::testContribDriverLog in Drupal 9

Same name and namespace in other branches
  1. 10 core/tests/Drupal/Tests/Core/Database/LogTest.php \Drupal\Tests\Core\Database\LogTest::testContribDriverLog()

Tests that a log called by a custom database driver returns proper caller.

@covers ::findCaller

File

core/tests/Drupal/Tests/Core/Database/LogTest.php, line 26

Class

LogTest
Tests the Log class.

Namespace

Drupal\Tests\Core\Database

Code

public function testContribDriverLog() {
  Database::addConnectionInfo('default', 'default', [
    'driver' => 'test',
    'namespace' => 'Drupal\\Tests\\Core\\Database\\Stub',
  ]);
  $pdo = $this
    ->prophesize(StubPDO::class)
    ->reveal();
  $result = (new StubConnection($pdo, []))
    ->testLogCaller();
  $this
    ->assertSame([
    'file' => __FILE__,
    'line' => 33,
    'function' => 'testContribDriverLog',
    'class' => 'Drupal\\Tests\\Core\\Database\\LogTest',
    'type' => '->',
    'args' => [],
  ], $result);

  // Test calling the database log from outside of database code.
  $result = (new Log())
    ->findCaller();
  $this
    ->assertSame([
    'file' => __FILE__,
    'line' => 44,
    'function' => 'testContribDriverLog',
    'class' => 'Drupal\\Tests\\Core\\Database\\LogTest',
    'type' => '->',
    'args' => [],
  ], $result);
}