diff --git a/vorgang-manager-server/src/test/java/de/ozgcloud/document/bescheid/TestEventListener.java b/vorgang-manager-server/src/test/java/de/ozgcloud/TestEventListener.java similarity index 93% rename from vorgang-manager-server/src/test/java/de/ozgcloud/document/bescheid/TestEventListener.java rename to vorgang-manager-server/src/test/java/de/ozgcloud/TestEventListener.java index 9267814b32ebf1dda948e57989fb958f3f5a00db..de6fa9b3206afd4fd1de5c567c035e0989f3af1d 100644 --- a/vorgang-manager-server/src/test/java/de/ozgcloud/document/bescheid/TestEventListener.java +++ b/vorgang-manager-server/src/test/java/de/ozgcloud/TestEventListener.java @@ -21,15 +21,16 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -package de.ozgcloud.document.bescheid; +package de.ozgcloud; import org.springframework.context.event.EventListener; import de.ozgcloud.command.CommandFailedEvent; import de.ozgcloud.document.BescheidDocumentCreatedEvent; +import de.ozgcloud.document.bescheid.BescheidSentEvent; import de.ozgcloud.vorgang.status.StatusChangedEvent; -class TestEventListener { +public class TestEventListener { @EventListener public void onBescheidDocumentCreated(BescheidDocumentCreatedEvent event) { diff --git a/vorgang-manager-server/src/test/java/de/ozgcloud/document/bescheid/BescheidDocumentITCase.java b/vorgang-manager-server/src/test/java/de/ozgcloud/document/bescheid/BescheidDocumentITCase.java index cea527a2cb90329c75ba95f9d1a36affc7ff662f..47cd0f59dd4c0137af080f570fe8801189b0651f 100644 --- a/vorgang-manager-server/src/test/java/de/ozgcloud/document/bescheid/BescheidDocumentITCase.java +++ b/vorgang-manager-server/src/test/java/de/ozgcloud/document/bescheid/BescheidDocumentITCase.java @@ -42,6 +42,7 @@ import org.springframework.boot.test.mock.mockito.SpyBean; import org.springframework.context.ApplicationEventPublisher; import org.springframework.test.annotation.DirtiesContext; +import de.ozgcloud.TestEventListener; import de.ozgcloud.command.Command; import de.ozgcloud.command.CommandCreatedEvent; import de.ozgcloud.command.CommandFailedEvent; diff --git a/vorgang-manager-server/src/test/java/de/ozgcloud/document/bescheid/BescheidITCase.java b/vorgang-manager-server/src/test/java/de/ozgcloud/document/bescheid/BescheidITCase.java index 90bf36e78e775f9bdd28cc97b125602749363529..4315bd68f59f737033ce27546eab57cae2aa4810 100644 --- a/vorgang-manager-server/src/test/java/de/ozgcloud/document/bescheid/BescheidITCase.java +++ b/vorgang-manager-server/src/test/java/de/ozgcloud/document/bescheid/BescheidITCase.java @@ -55,6 +55,7 @@ import org.springframework.test.annotation.DirtiesContext; import com.mongodb.client.gridfs.model.GridFSFile; +import de.ozgcloud.TestEventListener; import de.ozgcloud.apilib.user.OzgCloudUserId; import de.ozgcloud.apilib.user.OzgCloudUserProfile; import de.ozgcloud.apilib.user.OzgCloudUserProfileService; diff --git a/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/collaboration/CollaborationITCase.java b/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/collaboration/CollaborationITCase.java index 7c3ca7a247abec7da3362c0be354d360ef952f44..7b8f7b5569941d9bf994b7e5ec602aa2956cd90d 100644 --- a/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/collaboration/CollaborationITCase.java +++ b/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/collaboration/CollaborationITCase.java @@ -50,6 +50,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.mock.mockito.MockBean; +import org.springframework.boot.test.mock.mockito.SpyBean; import org.springframework.data.mongodb.core.MongoOperations; import org.springframework.data.mongodb.core.query.Criteria; import org.springframework.data.mongodb.core.query.Query; @@ -60,6 +61,7 @@ import org.springframework.test.util.ReflectionTestUtils; import com.google.protobuf.ByteString; import com.thedeanda.lorem.LoremIpsum; +import de.ozgcloud.TestEventListener; import de.ozgcloud.apilib.client_attribute.grpc.OzgCloudClientAttributeMapper; import de.ozgcloud.apilib.user.OzgCloudUserId; import de.ozgcloud.apilib.user.OzgCloudUserProfile; @@ -74,6 +76,7 @@ import de.ozgcloud.collaboration.request.CollaborationRequestServiceGrpc.Collabo import de.ozgcloud.collaboration.request.GrpcFindRequestsRequest; import de.ozgcloud.collaboration.request.GrpcGetRequestRequest; import de.ozgcloud.command.Command; +import de.ozgcloud.command.CommandFailedEvent; import de.ozgcloud.command.CommandStatus; import de.ozgcloud.common.errorhandling.TechnicalException; import de.ozgcloud.common.test.DataITCase; @@ -125,6 +128,8 @@ class CollaborationITCase { @Autowired private MongoOperations mongoOperations; + @SpyBean + private TestEventListener testEventListener; @MockBean @Qualifier(CollaborationManagerConfiguration.OZGCLOUD_USER_PROFILE_SERVICE_NAME) @@ -295,6 +300,8 @@ class CollaborationITCase { class TestSuccessfully { @Captor private ArgumentCaptor<PostfachNachricht> postfachNachrichtCaptor; + @Captor + private ArgumentCaptor<CommandFailedEvent> commandFailedEventCaptor; @BeforeEach void init() { @@ -329,7 +336,10 @@ class CollaborationITCase { doThrow(TechnicalException.class).when(postfachRemoteService).sendMessage(any()); var command = commandService.createCommand(buildCreateCollaborationVorgangCommand(vorgangId, COLLABORATION_LEVEL)); - waitUntilCommandHasStatus(command.getId(), CommandStatus.ERROR); + await().atMost(60, TimeUnit.SECONDS).untilAsserted(() -> { + verify(testEventListener, atLeastOnce()).onCommandFailed(commandFailedEventCaptor.capture()); + assertThat(commandFailedEventCaptor.getValue().getSource()).isEqualTo(command.getId()); + }); assertThat(loadCollaborationRequest(vorgangId)).isEmpty(); }