public function testBeginTransactionAndRollback() { $this->eventStore->beginTransaction(); $user = new User('1'); $user->changeName('Malocher'); $user->changeEmail('*****@*****.**'); $persistedEventList = array(); $this->eventStore->events()->addListener(PostPersistEvent::NAME, function (PostPersistEvent $e) use(&$persistedEventList) { foreach ($e->getPersistedEvents() as $persistedEvent) { $persistedEventList[] = get_class($persistedEvent); } }); $this->eventStore->save($user); $this->eventStore->rollback(); $this->assertEmpty($persistedEventList); }
/** * {@inheritDoc} */ public function save(EventSourcedObject $eventSourcedObject) { $this->eventStore->save($eventSourcedObject); }