function DatabaseEventsTest::testEventEnablingAndDisabling

Same name and namespace in other branches
  1. 11.x core/tests/Drupal/Tests/Core/Database/DatabaseEventsTest.php \Drupal\Tests\Core\Database\DatabaseEventsTest::testEventEnablingAndDisabling()

@covers ::isEventEnabled @covers ::enableEvents @covers ::disableEvents

File

core/tests/Drupal/Tests/Core/Database/DatabaseEventsTest.php, line 44

Class

DatabaseEventsTest
@coversDefaultClass <a href="/api/drupal/core%21lib%21Drupal%21Core%21Database%21Connection.php/class/Connection/10" title="Base Database API class." class="local">\Drupal\Core\Database\Connection</a>

Namespace

Drupal\Tests\Core\Database

Code

public function testEventEnablingAndDisabling() : void {
    $this->connection
        ->enableEvents(StatementEvent::all());
    $this->assertTrue($this->connection
        ->isEventEnabled(StatementExecutionStartEvent::class));
    $this->assertTrue($this->connection
        ->isEventEnabled(StatementExecutionEndEvent::class));
    $this->assertTrue($this->connection
        ->isEventEnabled(StatementExecutionFailureEvent::class));
    $this->connection
        ->disableEvents([
        StatementExecutionEndEvent::class,
    ]);
    $this->assertTrue($this->connection
        ->isEventEnabled(StatementExecutionStartEvent::class));
    $this->assertFalse($this->connection
        ->isEventEnabled(StatementExecutionEndEvent::class));
    $this->assertTrue($this->connection
        ->isEventEnabled(StatementExecutionFailureEvent::class));
    $this->connection
        ->disableEvents(StatementEvent::all());
    $this->assertFalse($this->connection
        ->isEventEnabled(StatementExecutionStartEvent::class));
    $this->assertFalse($this->connection
        ->isEventEnabled(StatementExecutionEndEvent::class));
    $this->assertFalse($this->connection
        ->isEventEnabled(StatementExecutionFailureEvent::class));
}

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