You are here

public function TxBufferTest::testRewind in Purge 8.3

Tests \Drupal\purge\Plugin\Purge\Queue\TxBuffer::rewind.

File

tests/src/Kernel/Queue/TxBufferTest.php, line 207

Class

TxBufferTest
Tests \Drupal\purge\Tests\Queue\TxBufferTest.

Namespace

Drupal\Tests\purge\Kernel\Queue

Code

public function testRewind() : void {
  $objects = $this
    ->getInvalidations(5);
  $this
    ->assertNull($this->purgeQueueTxbuffer
    ->key());
  $this
    ->assertFalse($this->purgeQueueTxbuffer
    ->rewind());
  $this
    ->assertNull($this->purgeQueueTxbuffer
    ->key());
  $this->purgeQueueTxbuffer
    ->set($objects, TxBufferInterface::CLAIMED);
  $this
    ->assertEquals($objects[0]
    ->getId(), $this->purgeQueueTxbuffer
    ->key());

  // phpcs:ignore DrupalPractice.CodeAnalysis.VariableAnalysis.UnusedVariable
  foreach ($this->purgeQueueTxbuffer as $i) {

    // Just iterate, to advance the internal pointer.
  }
  $this->purgeQueueTxbuffer
    ->rewind();
  $this
    ->assertEquals($objects[0]
    ->getId(), $this->purgeQueueTxbuffer
    ->key());
}