From 262b154833189b873152fd1f25345c773b2ece1b Mon Sep 17 00:00:00 2001
From: aalekhj <aaljain@microsoft.com>
Date: Wed, 23 Sep 2020 19:14:50 +0530
Subject: [PATCH] Added UTs for `create` method in
 `LegalTagRepositoryImpl.java`

---
 .../LegalTagRepositoryImplTest.java           | 24 +++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/provider/legal-azure/src/test/java/org/opengroup/osdu/legal/azure/tags/dataaccess/LegalTagRepositoryImplTest.java b/provider/legal-azure/src/test/java/org/opengroup/osdu/legal/azure/tags/dataaccess/LegalTagRepositoryImplTest.java
index c7f7e3fc6..dd45f72c4 100644
--- a/provider/legal-azure/src/test/java/org/opengroup/osdu/legal/azure/tags/dataaccess/LegalTagRepositoryImplTest.java
+++ b/provider/legal-azure/src/test/java/org/opengroup/osdu/legal/azure/tags/dataaccess/LegalTagRepositoryImplTest.java
@@ -59,6 +59,30 @@ public class LegalTagRepositoryImplTest {
         lenient().doReturn(dataPartitionId).when(headers).getPartitionId();
     }
 
+    @Test(expected = AppException.class)
+    public void testCreateLegalTagAlreadyExisting_throwsException() {
+        long id = 1234;
+        String strId = String.valueOf(id);
+        LegalTag legalTag = getLegalTagWithId(id);
+        Optional<LegalTag> optionalLegalTag = Optional.of(legalTag);
+        doReturn(optionalLegalTag).when(cosmosStore).findItem(eq(dataPartitionId), any(), any(), eq(strId), eq(strId), any());
+        sut.create(legalTag);
+    }
+
+    @Test
+    public void testCreateLegalTag_upsertItem_executesCorrectQuery() {
+        long id = 1234;
+        String strId = String.valueOf(id);
+        LegalTag legalTag = getLegalTagWithId(id);
+        long obtainedId = sut.create(legalTag);
+
+        ArgumentCaptor<LegalTagDoc> arg = ArgumentCaptor.forClass(LegalTagDoc.class);
+        verify(cosmosStore).upsertItem(anyString(), any(), any(), arg.capture());
+
+        assertEquals(arg.getValue().getId(), strId);
+        assertEquals(obtainedId, id);
+    }
+
     @Test
     public void testGetLegalTagCollections_whenIdsIsNull() {
         long[] ids = null;
-- 
GitLab