Search in sources :

Example 1 with PostponingRejectionDelivery

use of io.spine.server.procman.given.PmMessageDeliveryTestEnv.PostponingRejectionDelivery in project core-java by SpineEventEngine.

the class PmMessageDeliveryShould method postpone_rejections_dispatched_to_reactor_method.

@Test
public void postpone_rejections_dispatched_to_reactor_method() {
    assertNull(ReactingProjectWizard.getEventReceived());
    final Rejection rejection = cannotStartProject();
    boundedContext.getRejectionBus().post(rejection);
    assertNull(ReactingProjectWizard.getRejectionReceived());
    final RejectionEnvelope expectedEnvelope = RejectionEnvelope.of(rejection);
    final PostponingRejectionDelivery delivery = repository.getRejectionEndpointDelivery();
    final Map<ProjectId, RejectionEnvelope> postponedRejections = delivery.getPostponedRejections();
    assertTrue(postponedRejections.size() == 1 && postponedRejections.containsValue(expectedEnvelope));
    final ProjectId projectId = postponedRejections.keySet().iterator().next();
    delivery.deliverNow(projectId, postponedRejections.get(projectId));
    final PmCannotStartArchivedProject deliveredRejectionMsg = ReactingProjectWizard.getRejectionReceived();
    assertNotNull(deliveredRejectionMsg);
    assertEquals(getMessage(rejection), deliveredRejectionMsg);
}
Also used : Rejection(io.spine.core.Rejection) PmCannotStartArchivedProject(io.spine.test.procman.rejection.Rejections.PmCannotStartArchivedProject) ProjectId(io.spine.test.procman.ProjectId) PostponingRejectionDelivery(io.spine.server.procman.given.PmMessageDeliveryTestEnv.PostponingRejectionDelivery) RejectionEnvelope(io.spine.core.RejectionEnvelope) Test(org.junit.Test)

Aggregations

Rejection (io.spine.core.Rejection)1 RejectionEnvelope (io.spine.core.RejectionEnvelope)1 PostponingRejectionDelivery (io.spine.server.procman.given.PmMessageDeliveryTestEnv.PostponingRejectionDelivery)1 ProjectId (io.spine.test.procman.ProjectId)1 PmCannotStartArchivedProject (io.spine.test.procman.rejection.Rejections.PmCannotStartArchivedProject)1 Test (org.junit.Test)1