X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=aai-core%2Fsrc%2Ftest%2Fjava%2Forg%2Fonap%2Faai%2Futil%2FPojoUtilsTest.java;h=3658704e8f499491afee9ae49192d030a3c574a3;hb=a86d6a6644d6de3f3f814cd6e25cfe2213d5dd05;hp=7cb959f9e415b5bdadaa5fded4bd7fc9ca68b6b5;hpb=a395fa69a28a04d0a667fe458b4f10497a1d6794;p=aai%2Faai-common.git diff --git a/aai-core/src/test/java/org/onap/aai/util/PojoUtilsTest.java b/aai-core/src/test/java/org/onap/aai/util/PojoUtilsTest.java index 7cb959f9..3658704e 100644 --- a/aai-core/src/test/java/org/onap/aai/util/PojoUtilsTest.java +++ b/aai-core/src/test/java/org/onap/aai/util/PojoUtilsTest.java @@ -25,18 +25,67 @@ import static org.junit.Assert.assertTrue; import java.time.LocalDateTime; import java.time.Month; +import java.util.ArrayList; +import java.util.Collection; +import java.util.HashMap; +import java.util.LinkedHashMap; +import java.util.List; +import javax.xml.bind.JAXBException; + +import org.eclipse.persistence.dynamic.DynamicEntity; +import org.eclipse.persistence.jaxb.JAXBContext; +import org.eclipse.persistence.jaxb.JAXBMarshaller; +import org.junit.Before; import org.junit.Test; import org.mockito.Mockito; +import org.onap.aai.domain.notificationEvent.NotificationEvent; + +import com.google.common.collect.ImmutableListMultimap; +import com.google.common.collect.Lists; +import com.google.common.collect.Multimap; public class PojoUtilsTest { + private PojoUtils pojoUtils; + + @Before + public void init() { + pojoUtils = new PojoUtils(); + } + @Test - public void testGetJsonFromObject_Clazz_MockTest() throws Exception { + public void testGetKeyValueList() throws Exception { + Entity entity = getEntityObject(); + Person person = getPojoObject(); - String obj = "helloWorld"; + List keyValueLists = pojoUtils.getKeyValueList(entity, person); + + for (KeyValueList keyValueList : keyValueLists) { + + if(keyValueList.getKey().equals("key")) { + assertEquals("value", keyValueList.getValue()); + } else if (keyValueList.getKey().equals("name")) { + assertEquals("Andrew", keyValueList.getValue()); + } else if(keyValueList.getKey().equals("nickname")) { + assertEquals("Andy", keyValueList.getValue()); + } else if(keyValueList.getKey().equals("age")) { + assertEquals("30", keyValueList.getValue()); + } else if(keyValueList.getKey().equals("weightlb")) { + assertEquals("185", keyValueList.getValue()); + } else if(keyValueList.getKey().equals("heightcm")) { + assertEquals("190", keyValueList.getValue()); + } else if(keyValueList.getKey().equals("pet")) { + assertEquals("", keyValueList.getValue()); + } + } + } + + @Test + public void testGetJsonFromObjectClassMockTest() throws Exception { PojoUtils pojoUtils = Mockito.mock(PojoUtils.class); - Mockito.doCallRealMethod().when(pojoUtils).getJsonFromObject(Mockito.anyString()); + String obj = "helloWorld"; + Mockito.when(pojoUtils.getJsonFromObject(Mockito.anyString())).thenCallRealMethod(); pojoUtils.getJsonFromObject(obj); @@ -44,9 +93,7 @@ public class PojoUtilsTest { } @Test - public void testGetJsonFromObject_Clazz() throws Exception { - - PojoUtils pojoUtils = PojoUtilsTest.getInstance(); + public void testGetJsonFromObjectClass() throws Exception { LocalDateTime date = LocalDateTime.of(2017, Month.SEPTEMBER, 18, 10, 55, 0, 300); String res = pojoUtils.getJsonFromObject(date); @@ -63,21 +110,17 @@ public class PojoUtilsTest { assertTrue(res.contains("\"second\" : 0")); assertTrue(res.contains("\"year\" : 2017")); } - + @Test - public void testGetJsonFromObject_Clazz_null() throws Exception { - PojoUtils pojoUtils = PojoUtilsTest.getInstance(); - + public void testGetJsonFromObjectClassNull() throws Exception { String res = pojoUtils.getJsonFromObject(null); assertNotNull(res); assertEquals("null", res); } - + @Test - public void testGetJsonFromObject_null() throws Exception { - PojoUtils pojoUtils = PojoUtilsTest.getInstance(); - + public void testGetJsonFromObjectNull() throws Exception { String res = pojoUtils.getJsonFromObject(null, false, true); assertNotNull(res); @@ -86,20 +129,199 @@ public class PojoUtilsTest { @Test public void testGetJsonFromObject() throws Exception { - PojoUtils pojoUtils = PojoUtilsTest.getInstance(); LocalDateTime date = LocalDateTime.of(2017, Month.SEPTEMBER, 18, 10, 55, 0, 300); - + String res = pojoUtils.getJsonFromObject(date, false, false); assertNotNull(res); - + res = pojoUtils.getJsonFromObject(date, true, false); assertNotNull(res); - + res = pojoUtils.getJsonFromObject(date, true, true); assertNotNull(res); } + + @Test + public void testGetJsonFromDynamicObject() throws Exception { + DynamicEntity dynamicEntity = Mockito.mock(DynamicEntity.class); + JAXBContext jaxbContext = Mockito.mock(JAXBContext.class); + JAXBMarshaller marshaller = Mockito.mock(JAXBMarshaller.class); + + Mockito.when(jaxbContext.createMarshaller()).thenReturn(marshaller); + + String output = pojoUtils.getJsonFromDynamicObject(dynamicEntity, jaxbContext, true); + assertEquals("", output); + } + + @Test(expected = NullPointerException.class) + public void testGetXmlFromObjectNull() throws Exception { + pojoUtils.getXmlFromObject(null); + } + + @Test + public void testGetXmlFromObject() throws JAXBException { + NotificationEvent notificationEvent = new NotificationEvent(); + notificationEvent.setCambriaPartition("partition"); + + String res = pojoUtils.getXmlFromObject(notificationEvent); + + assertNotNull(res); + assertTrue(res.contains("")); + assertTrue(res.contains("partition")); + assertTrue(res.contains("")); + } + + @Test + public void testGetLookupKeyEmptyKey() { + String baseKey = ""; + Collection keyProps = new ArrayList(); + keyProps.add("key"); + + HashMap lookup = new HashMap(); + lookup.put("key", "val"); + String expectedLookupKey = "key=val"; + + String res = pojoUtils.getLookupKey(baseKey, lookup, keyProps); + assertEquals(expectedLookupKey, res); + } + + @Test + public void testGetLookupKey() { + String baseKey = "baseKey"; + Collection keyProps = new ArrayList(); + keyProps.add("key"); + + HashMap lookup = new HashMap(); + lookup.put("key", "val"); + String expectedLookupKey = "baseKey&key=val"; + + String res = pojoUtils.getLookupKey(baseKey, lookup, keyProps); + + assertEquals(expectedLookupKey, res); + } + + @Test + public void testGetLookupKeys() { + HashMap lookup = new HashMap<>(); + lookup.put("multimapkey", "val"); + LinkedHashMap> lookupHashes = new LinkedHashMap<>(); + lookupHashes.put("objectType", lookup); + + Multimap multimap = ImmutableListMultimap.of("objectType", "multimapkey"); + String res = pojoUtils.getLookupKeys(lookupHashes, multimap); + + String lookupKey = "val"; + assertNotNull(res); + assertEquals(lookupKey, res); + } + + @Test + public void testGetExampleObject() throws Exception { + Person p = getPojoObject(); + pojoUtils.getExampleObject(p, true); + assertNotNull(p); + assertTrue(p.getName().contains("example-name-val-")); + assertTrue(p.getNickname().contains("example-nickname-val-")); + assertTrue(p.getPet().contains("example-pet-val-")); + assertNotNull(p.getAge()); + assertNotNull(p.getHeightcm()); + assertNotNull(p.getWeightlb()); + assertTrue(p.isMarried()); + } + + private Entity getEntityObject() { + Entity entity = new Entity(); + KeyValueList list = new KeyValueList(); + list.setKey("key"); + list.setValue("value"); + + entity.setAction("action"); + entity.setKeyValueList(Lists.newArrayList(list)); + entity.setEquipmentRole("equipmentRole"); + entity.setSelfLink("selfLink"); + + return entity; + } - static PojoUtils getInstance() { - return new PojoUtils(); + private Person getPojoObject() { + Person p = new Person("Andrew"); + p.setAge(30); + p.setHeightcm((short) 190); + p.setWeightlb(185); + p.setNickname("Andy"); + p.setPet(null); + return p; + } + + class Person { + + private int age; + private long weightlb; + private short heightcm; + private String nickname; + private String name; + private String pet; + private boolean isMarried; + + public Person(String name) { + this.name = name; + } + + public int getAge() { + return age; + } + + public void setAge(int age) { + this.age = age; + } + + public long getWeightlb() { + return weightlb; + } + + public void setWeightlb(long weightlb) { + this.weightlb = weightlb; + } + + public short getHeightcm() { + return heightcm; + } + + public void setHeightcm(short heightcm) { + this.heightcm = heightcm; + } + + public String getNickname() { + return nickname; + } + + public void setNickname(String nickname) { + this.nickname = nickname; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getPet() { + return pet; + } + + public void setPet(String pet) { + this.pet = pet; + } + + public boolean isMarried() { + return isMarried; + } + + public void setMarried(boolean isMarried) { + this.isMarried = isMarried; + } + } }