use of io.spine.test.projection.event.ProjectCreated in project core-java by SpineEventEngine.
the class ProjectionRepositoryShould method checkDoesNotDispatchEventWith.
private void checkDoesNotDispatchEventWith(Status status) {
repository().setStatus(status);
final ProjectCreated eventMsg = projectCreated();
final Event event = createEvent(PRODUCER_ID, eventMsg);
repository().dispatch(event);
assertFalse(TestProjection.processed(eventMsg));
}
use of io.spine.test.projection.event.ProjectCreated in project core-java by SpineEventEngine.
the class ProjectionRepositoryShould method use_id_set_function.
@Test
public void use_id_set_function() {
final IdSetEventFunction<ProjectId, ProjectCreated> delegateFn = new IdSetEventFunction<ProjectId, ProjectCreated>() {
@Override
public Set<ProjectId> apply(ProjectCreated message, EventContext context) {
return newHashSet();
}
};
final IdSetEventFunction<ProjectId, ProjectCreated> idSetFunction = spy(delegateFn);
repository().addIdSetFunction(ProjectCreated.class, idSetFunction);
final Event event = createEvent(PRODUCER_ID, projectCreated());
repository().dispatch(event);
final ProjectCreated expectedEventMessage = Events.getMessage(event);
final EventContext context = event.getContext();
verify(idSetFunction).apply(eq(expectedEventMessage), eq(context));
}
use of io.spine.test.projection.event.ProjectCreated in project core-java by SpineEventEngine.
the class ProjectionRepositoryShould method ensureCatchesUpFromEventStorage.
private void ensureCatchesUpFromEventStorage(ProjectionRepository<ProjectId, TestProjection, Project> repo) {
final EventStore eventStore = boundedContext.getEventBus().getEventStore();
final TestEventFactory eventFactory = newEventFactory(PRODUCER_ID);
// Put events into the EventStore.
final ProjectCreated projectCreated = ProjectCreated.newBuilder().setProjectId(ID).build();
final Event projectCreatedEvent = eventFactory.createEvent(projectCreated);
appendEvent(eventStore, projectCreatedEvent);
final TaskAdded taskAdded = TaskAdded.newBuilder().setProjectId(ID).build();
final Event taskAddedEvent = eventFactory.createEvent(taskAdded);
appendEvent(eventStore, taskAddedEvent);
final ProjectStarted projectStarted = ProjectStarted.newBuilder().setProjectId(ID).build();
final Event projectStartedEvent = eventFactory.createEvent(projectStarted);
appendEvent(eventStore, projectStartedEvent);
repo.catchUp();
assertTrue(TestProjection.processed(projectCreated));
assertTrue(TestProjection.processed(taskAdded));
assertTrue(TestProjection.processed(projectStarted));
}
Aggregations