X-Git-Url: https://gerrit.onap.org/r/gitweb?p=policy%2Fengine.git;a=blobdiff_plain;f=POLICY-SDK-APP%2Fsrc%2Ftest%2Fjava%2Forg%2Fonap%2Fpolicy%2Fmodel%2FPDPGroupContainerTest.java;h=f184bde1bede57ac0368bd641f51f13818586360;hp=920cc97f839b081bc7ab6425af7236810ed7033e;hb=6285984e25e3fd7c0b00238c87ee21d2cf95fd6a;hpb=bfed41c8a4244d222d4cf4dd1d1068fddd42267e diff --git a/POLICY-SDK-APP/src/test/java/org/onap/policy/model/PDPGroupContainerTest.java b/POLICY-SDK-APP/src/test/java/org/onap/policy/model/PDPGroupContainerTest.java index 920cc97f8..f184bde1b 100644 --- a/POLICY-SDK-APP/src/test/java/org/onap/policy/model/PDPGroupContainerTest.java +++ b/POLICY-SDK-APP/src/test/java/org/onap/policy/model/PDPGroupContainerTest.java @@ -2,14 +2,14 @@ * ============LICENSE_START======================================================= * ONAP Policy Engine * ================================================================================ - * Copyright (C) 2018 AT&T Intellectual Property. All rights reserved. - * ================================================================================ + * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved. + ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -22,96 +22,147 @@ package org.onap.policy.model; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNull; +import static org.mockito.Mockito.doThrow; + +import com.att.research.xacml.api.pap.PAPException; +import java.awt.Checkbox; +import java.util.Set; import org.junit.Test; import org.mockito.Mockito; import org.onap.policy.rest.util.PolicyContainer.ItemSetChangeListener; import org.onap.policy.xacml.api.pap.OnapPDP; import org.onap.policy.xacml.api.pap.OnapPDPGroup; import org.onap.policy.xacml.api.pap.PAPPolicyEngine; -import com.att.research.xacml.api.pap.PAPException; public class PDPGroupContainerTest { - private PAPPolicyEngine engine = Mockito.mock(PAPPolicyEngine.class); - private PDPGroupContainer container = new PDPGroupContainer(engine); - - @Test - public void testContainer() throws PAPException { - Object itemId = new Object(); - assertEquals(container.isSupported(itemId), false); - - container.refreshGroups(); - assertEquals(container.getGroups().size(), 0); - - OnapPDPGroup group = Mockito.mock(OnapPDPGroup.class); - container.makeDefault(group); - OnapPDPGroup newGroup = Mockito.mock(OnapPDPGroup.class); - container.removeGroup(group, newGroup); - OnapPDP pdp = Mockito.mock(OnapPDP.class); - container.updatePDP(pdp); - container.updateGroup(group); - assertNull(container.getContainerPropertyIds()); - assertEquals(container.getItemIds().size(), 0); - assertEquals(container.getType(itemId), null); - assertEquals(container.size(), 0); - assertEquals(container.containsId(itemId), false); - String name = "testName"; - String description = "testDescription"; - container.addNewGroup(name, description); - String id = "testID"; - int jmxport = 0; - container.addNewPDP(id, newGroup, name, description, jmxport); - container.movePDP(pdp, newGroup); - ItemSetChangeListener listener = null; - container.addItemSetChangeListener(listener); - container.nextItemId(itemId); - container.prevItemId(itemId); - container.firstItemId(); - container.lastItemId(); - container.isFirstId(itemId); - container.isLastId(itemId); - container.indexOfId(itemId); - assertEquals(container.getItemIds().size(), 0); - container.removeItem(itemId); - container.removePDP(pdp, newGroup); - } - - @Test(expected=UnsupportedOperationException.class) - public void testAddItem() { - container.addItem(); - } - - @Test(expected=UnsupportedOperationException.class) - public void testAddContainerProperty() { - container.addContainerProperty(null, null, null); - } - - @Test(expected=UnsupportedOperationException.class) - public void testRemoveContainerProperty() { - container.removeContainerProperty(null); - } - - @Test(expected=UnsupportedOperationException.class) - public void testRemoveAllItems() { - container.removeAllItems(); - } - - @Test(expected=UnsupportedOperationException.class) - public void testAddItemAfter() { - container.addItemAfter(null); - } - - @Test(expected=IndexOutOfBoundsException.class) - public void testGetIdByIndex() { - container.getIdByIndex(0); - } - - @Test(expected=UnsupportedOperationException.class) - public void testAddItemAt() { - container.addItemAt(0); - } - - @Test(expected=IllegalArgumentException.class) - public void testGetItemIds() { - container.getItemIds(0, 1); - } -} + private OnapPDPGroup group = Mockito.mock(OnapPDPGroup.class); + private OnapPDPGroup newGroup = Mockito.mock(OnapPDPGroup.class); + private OnapPDP pdp = Mockito.mock(OnapPDP.class); + private PAPPolicyEngine engine = Mockito.mock(PAPPolicyEngine.class); + private PDPGroupContainer container = new PDPGroupContainer(engine); + + @Test + public void testContainer() throws PAPException { + Object itemId = new Object(); + assertEquals(container.isSupported(itemId), false); + + container.refreshGroups(); + assertEquals(container.getGroups().size(), 0); + + container.makeDefault(group); + container.removeGroup(group, newGroup); + container.updatePDP(pdp); + container.updateGroup(group); + container.updateGroup(group, "testUserName"); + assertNull(container.getContainerPropertyIds()); + assertEquals(container.getItemIds().size(), 0); + assertEquals(container.getType(itemId), null); + assertEquals(container.size(), 0); + assertEquals(container.containsId(itemId), false); + String name = "testName"; + String description = "testDescription"; + container.addNewGroup(name, description); + String id = "testID"; + int jmxport = 0; + container.addNewPDP(id, newGroup, name, description, jmxport); + container.movePDP(pdp, newGroup); + ItemSetChangeListener listener = null; + container.addItemSetChangeListener(listener); + container.nextItemId(itemId); + container.prevItemId(itemId); + container.firstItemId(); + container.lastItemId(); + container.isFirstId(itemId); + container.isLastId(itemId); + container.indexOfId(itemId); + assertEquals(container.getItemIds().size(), 0); + container.removeItem(itemId); + container.removePDP(pdp, newGroup); + } + + @Test(expected = UnsupportedOperationException.class) + public void testAddItem() { + container.addItem(); + } + + @Test(expected = UnsupportedOperationException.class) + public void testAddContainerProperty() { + container.addContainerProperty(null, null, null); + } + + @Test(expected = UnsupportedOperationException.class) + public void testRemoveContainerProperty() { + container.removeContainerProperty(null); + } + + @Test(expected = UnsupportedOperationException.class) + public void testRemoveAllItems() { + container.removeAllItems(); + } + + @Test(expected = UnsupportedOperationException.class) + public void testAddItemAfter() { + container.addItemAfter(null); + } + + @Test(expected = IndexOutOfBoundsException.class) + public void testGetIdByIndex() { + container.getIdByIndex(0); + } + + @Test(expected = UnsupportedOperationException.class) + public void testAddItemAt() { + container.addItemAt(0); + } + + @Test(expected = IllegalArgumentException.class) + public void testGetItemIds() { + container.getItemIds(0, 1); + } + + @Test + public void testGetType() { + assertEquals(Boolean.class, container.getType("Default")); + assertEquals(Checkbox.class, container.getType("Selected")); + assertEquals(Set.class, container.getType("PDPs")); + assertEquals(Set.class, container.getType("Policies")); + assertEquals(Set.class, container.getType("PIP Configurations")); + assertEquals(String.class, container.getType("Id")); + assertEquals(String.class, container.getType("Name")); + assertEquals(String.class, container.getType("Description")); + assertEquals(String.class, container.getType("Status")); + } + + @Test + public void testContainerPAPExceptions() throws PAPException { + doThrow(PAPException.class).when(engine).getOnapPDPGroups(); + container.refreshGroups(); + + doThrow(PAPException.class).when(engine).setDefaultGroup(group); + container.makeDefault(group); + + doThrow(PAPException.class).when(engine).updatePDP(pdp); + container.updatePDP(pdp); + + doThrow(PAPException.class).when(engine).updateGroup(group); + container.updateGroup(group); + + doThrow(PAPException.class).when(engine).updateGroup(group, "testUserName"); + container.updateGroup(group, "testUserName"); + + doThrow(PAPException.class).when(engine).movePDP(pdp, group); + container.movePDP(pdp, group); + } + + @Test(expected = PAPException.class) + public void testContainerRemoveGroup() throws PAPException { + doThrow(PAPException.class).when(engine).removeGroup(group, newGroup); + container.removeGroup(group, newGroup); + } + + @Test(expected = PAPException.class) + public void testContainerRemovePDP() throws PAPException { + doThrow(PAPException.class).when(engine).removePDP(pdp); + container.removePDP(pdp, group); + } +} \ No newline at end of file