From 9145eaf313b57e3b42434e1aedefdc7ce5e09533 Mon Sep 17 00:00:00 2001 From: aalekhj <aaljain@microsoft.com> Date: Thu, 24 Sep 2020 12:24:04 +0530 Subject: [PATCH] Added UT for `LegalTagPublisherImpl.java` --- .../azure/jobs/LegalTagPublisherImplTest.java | 33 ++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/provider/legal-azure/src/test/java/org/opengroup/osdu/legal/azure/jobs/LegalTagPublisherImplTest.java b/provider/legal-azure/src/test/java/org/opengroup/osdu/legal/azure/jobs/LegalTagPublisherImplTest.java index ccbe72aec..6a40ac171 100644 --- a/provider/legal-azure/src/test/java/org/opengroup/osdu/legal/azure/jobs/LegalTagPublisherImplTest.java +++ b/provider/legal-azure/src/test/java/org/opengroup/osdu/legal/azure/jobs/LegalTagPublisherImplTest.java @@ -39,7 +39,6 @@ import static org.mockito.Mockito.*; @RunWith(MockitoJUnitRunner.class) public class LegalTagPublisherImplTest { - private static final String DATA_PARTITION_WITH_FALLBACK_ACCOUNT_ID = "data-partition-account-id"; private static final String CORRELATION_ID = "correlation-id"; private static final String USER_EMAIL = "user@email.com"; @@ -66,4 +65,36 @@ public class LegalTagPublisherImplTest { doReturn(USER_EMAIL).when(headers).getUserEmail(); sut = new LegalTagPublisherImpl(topicClient, logger); } + + @Test + public void testPublishLegalTag() throws Exception { + StatusChangedTags tags = new StatusChangedTags(); + sut.publish("project-id", headers, tags); + ArgumentCaptor<Message> msg = ArgumentCaptor.forClass(Message.class); + ArgumentCaptor<String> log = ArgumentCaptor.forClass(String.class); + ArgumentCaptor<Exception> exception = ArgumentCaptor.forClass(Exception.class); + + verify(logger).info(log.capture()); + assertEquals("Storage publishes message " + CORRELATION_ID, log.getValue()); + + verify(topicClient).send(msg.capture()); + Map<String, Object> properties = msg.getValue().getProperties(); + + assertEquals(DATA_PARTITION_WITH_FALLBACK_ACCOUNT_ID, properties.get(DpsHeaders.ACCOUNT_ID)); + assertEquals(DATA_PARTITION_WITH_FALLBACK_ACCOUNT_ID, properties.get(DpsHeaders.DATA_PARTITION_ID)); + assertEquals(CORRELATION_ID, properties.get(DpsHeaders.CORRELATION_ID)); + assertEquals(USER_EMAIL, properties.get(DpsHeaders.USER_EMAIL)); + + MessageBody messageBody = msg.getValue().getMessageBody(); + Gson gson = new Gson(); + String messageKey = "message"; + String dataKey = "data"; + JsonObject jsonObjectMessage = gson.fromJson(new String(messageBody.getBinaryData().get(0)), JsonObject.class); + JsonObject jsonObject = (JsonObject) jsonObjectMessage.get(messageKey); + assertEquals(DATA_PARTITION_WITH_FALLBACK_ACCOUNT_ID, jsonObject.get(DpsHeaders.ACCOUNT_ID).getAsString()); + assertEquals(DATA_PARTITION_WITH_FALLBACK_ACCOUNT_ID, jsonObject.get(DpsHeaders.DATA_PARTITION_ID).getAsString()); + assertEquals(CORRELATION_ID, jsonObject.get(DpsHeaders.CORRELATION_ID).getAsString()); + assertEquals(USER_EMAIL, jsonObject.get(DpsHeaders.USER_EMAIL).getAsString()); + assertEquals(gson.toJsonTree(tags), jsonObject.get(dataKey)); + } } -- GitLab