Prooph\EventStore\Adapter\InMemoryAdapter::loadEvents PHP Méthode

loadEvents() public méthode

public loadEvents ( StreamName $streamName, array $metadata = [], null | integer $minVersion = null ) : Iterator
$streamName Prooph\EventStore\Stream\StreamName
$metadata array
$minVersion null | integer
Résultat Iterator
    public function loadEvents(StreamName $streamName, array $metadata = [], $minVersion = null)
    {
        if (!isset($this->streams[$streamName->toString()])) {
            return new ArrayIterator();
        }
        $streamEvents = [];
        foreach ($this->streams[$streamName->toString()] as $index => $streamEvent) {
            if ($this->matchMetadataWith($streamEvent, $metadata)) {
                if (null === $minVersion || $streamEvent->version() >= $minVersion) {
                    $streamEvents[] = $streamEvent;
                }
            }
        }
        return new ArrayIterator($streamEvents);
    }

Usage Example

 /**
  * @test
  */
 public function it_returns_nothing_when_trying_to_load_events_by_metadata_fro_omn_non_existing_stream()
 {
     $streamName = $this->prophesize(StreamName::class);
     $streamName->toString()->willReturn('test');
     $this->assertEmpty($this->adapter->loadEvents($streamName->reveal(), []));
 }