/** * @test * @dataProvider messageProvider * @param AggregateIdInterface $aggregateId * @param $version * @param $payload * @param \DateTimeImmutable $date */ public function itShouldCreateAUuidFromNamedConstructor(AggregateIdInterface $aggregateId, $version, $payload, \DateTimeImmutable $date) { $message = DomainMessage::recordNow($aggregateId, $version, $payload); $this->assertInstanceOf(DomainMessage::class, $message); $this->assertNotEmpty((int) $message->getRecordedOn()->format('u'), 'Expected microseconds to be set'); $this->assertEquals(new \DateTimeZone('UTC'), $message->getRecordedOn()->getTimezone()); }
private function record(DomainEventInterface $event) { $this->uncommittedEvents[] = DomainMessage::recordNow($this->getAggregateRootId(), $this->version, $event); }