public function dont_test_it_ignores_invalid_events() { $events = array(EventMessage::record(new EventDouble('Event 1'), new EntityDTO('Entity', new Id(1))), 'event 2', EventMessage::record(new EventDouble('Event 3'), new EntityDTO('Entity', new Id(1)))); $Stream = new EventStream(); $Stream->load($events); $this->assertEquals(2, $Stream->count()); }
public function test_it_can_add_an_array_of_metadata() { $message = EventMessage::record(new EventDouble(1), new EntityDTO('Entity', new Id(1), 1)); $metadata = array('meta' => 'data', 'field' => 'value'); $message->addMetadata($metadata); $this->assertEquals($metadata, $message->getMetadata()); }
private function createFixtures($entity, $id) { $stream = new EventStream(); $stream->recordThat(EventMessage::record(new CreationEvent($id), new EntityDTO($entity, $id, 1))); $stream->recordThat(EventMessage::record(new ModificationEvent('new value'), new EntityDTO($entity, $id, 2))); $stream->recordThat(EventMessage::record(new ModificationEvent('last value'), new EntityDTO($entity, $id, 3))); $this->storage->saveStream($stream); }
private function prepare_stream_for_entity($entity, $eventCount) { $stream = new EventStream(); for ($i = 0; $i < $eventCount; $i++) { $event = $this->getEvent('Event_' . $i); $stream->recordThat(EventMessage::record($event, $entity)); } return $stream; }
/** * Apply and record an event * * @param Event $event * @return void * @author Francisco Iglesias Gómez */ protected function recordThat(Event $event) { if (!$this->canHandleEvent($event)) { return; } $this->apply($event); $this->initStream(); $this->events->recordThat(EventMessage::record($event, EntityDTO::fromEntity($this))); }