summaryrefslogtreecommitdiffstats
path: root/ONAP-PDP
diff options
context:
space:
mode:
Diffstat (limited to 'ONAP-PDP')
-rw-r--r--ONAP-PDP/pom.xml24
-rw-r--r--ONAP-PDP/src/test/java/org/onap/policy/xacml/pdp/ONAPPDPEngineFactoryTest.java78
-rw-r--r--ONAP-PDP/src/test/java/org/onap/policy/xacml/pdp/ONAPPDPEngineTest.java45
3 files changed, 125 insertions, 22 deletions
diff --git a/ONAP-PDP/pom.xml b/ONAP-PDP/pom.xml
index 02057bd3a..a2cbc8b37 100644
--- a/ONAP-PDP/pom.xml
+++ b/ONAP-PDP/pom.xml
@@ -34,6 +34,25 @@
</parent>
<dependencies>
<dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-core</artifactId>
+ <version>1.10.19</version>
+ <scope>test</scope>
+ </dependency>
+ <!-- https://mvnrepository.com/artifact/org.powermock/powermock-api-mockito -->
+ <dependency>
+ <groupId>org.powermock</groupId>
+ <artifactId>powermock-api-mockito</artifactId>
+ <version>1.7.3</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.powermock</groupId>
+ <artifactId>powermock-module-junit4</artifactId>
+ <version>1.7.3</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
<groupId>org.onap.policy.engine</groupId>
<version>${project.version}</version>
<artifactId>ONAP-REST</artifactId>
@@ -94,6 +113,11 @@
<version>${project.version}</version>
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>com.mockrunner</groupId>
+ <artifactId>mockrunner</artifactId>
+ <version>0.3.1</version>
+ </dependency>
</dependencies>
</project>
diff --git a/ONAP-PDP/src/test/java/org/onap/policy/xacml/pdp/ONAPPDPEngineFactoryTest.java b/ONAP-PDP/src/test/java/org/onap/policy/xacml/pdp/ONAPPDPEngineFactoryTest.java
index 0c9d24615..1bde7dd84 100644
--- a/ONAP-PDP/src/test/java/org/onap/policy/xacml/pdp/ONAPPDPEngineFactoryTest.java
+++ b/ONAP-PDP/src/test/java/org/onap/policy/xacml/pdp/ONAPPDPEngineFactoryTest.java
@@ -2,7 +2,7 @@
* ============LICENSE_START=======================================================
* ONAP-PDP
* ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2017-2018 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.
@@ -21,32 +21,66 @@ package org.onap.policy.xacml.pdp;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
-
import java.util.Properties;
-
import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mockito;
+import org.powermock.api.mockito.PowerMockito;
+import org.powermock.core.classloader.annotations.PrepareForTest;
+import org.powermock.modules.junit4.PowerMockRunner;
+import com.att.research.xacml.util.FactoryException;
+import com.att.research.xacml.util.FactoryFinder;
+import com.att.research.xacmlatt.pdp.eval.EvaluationContextFactory;
+@RunWith(PowerMockRunner.class)
public class ONAPPDPEngineFactoryTest {
+ @Test
+ public final void testNewEngine() {
+ ONAPPDPEngineFactory pdpEngine = new ONAPPDPEngineFactory();
+ try {
+ assertTrue(pdpEngine.newEngine() != null);
+ } catch (Exception e) {
+ fail("operation failed, e=" + e);
+ }
+ }
+
+ @Test
+ public final void testNewEngineProperties() {
+ ONAPPDPEngineFactory pdpEngine = new ONAPPDPEngineFactory();
+ Properties properties = new Properties();
+ try {
+ assertTrue(pdpEngine.newEngine(properties) != null);
+ } catch (Exception e) {
+ fail("operation failed, e=" + e);
+ }
+ }
+
+ @PrepareForTest({EvaluationContextFactory.class, FactoryFinder.class})
+ @Test(expected = FactoryException.class)
+ public void negTestEngine() throws FactoryException {
+ // Setup test data
+ PowerMockito.mockStatic(FactoryFinder.class);
+ PowerMockito.when(FactoryFinder.find(Mockito.any(), Mockito.any(), Mockito.any()))
+ .thenReturn(null);
- @Test
- public final void testNewEngine() {
- ONAPPDPEngineFactory pdpEngine = new ONAPPDPEngineFactory();
- try{
- assertTrue(pdpEngine.newEngine() != null);
- }catch (Exception e) {
- fail("operation failed, e="+e);
- }
+ // Negative test factory
+ ONAPPDPEngineFactory factory = new ONAPPDPEngineFactory();
+ factory.newEngine();
+ fail("Expecting an exception.");
+ }
- }
+ @PrepareForTest({EvaluationContextFactory.class, FactoryFinder.class})
+ @Test(expected = FactoryException.class)
+ public void negTestEngine2() throws FactoryException {
+ // Setup test data
+ PowerMockito.mockStatic(FactoryFinder.class);
+ PowerMockito.when(FactoryFinder.find(Mockito.any(), Mockito.any(), Mockito.any()))
+ .thenReturn(null);
- @Test
- public final void testNewEngineProperties() {
- ONAPPDPEngineFactory pdpEngine = new ONAPPDPEngineFactory();
- Properties properties = new Properties();
- try{
- assertTrue(pdpEngine.newEngine(properties) != null);
- }catch (Exception e) {
- fail("operation failed, e="+e);
- }
- }
+ // Negative test factory
+ ONAPPDPEngineFactory factory = new ONAPPDPEngineFactory();
+ Properties properties = new Properties();
+ factory.newEngine(properties);
+ fail("Expecting an exception.");
+ }
}
diff --git a/ONAP-PDP/src/test/java/org/onap/policy/xacml/pdp/ONAPPDPEngineTest.java b/ONAP-PDP/src/test/java/org/onap/policy/xacml/pdp/ONAPPDPEngineTest.java
new file mode 100644
index 000000000..6eb6e4cfc
--- /dev/null
+++ b/ONAP-PDP/src/test/java/org/onap/policy/xacml/pdp/ONAPPDPEngineTest.java
@@ -0,0 +1,45 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP-PDP
+ * ================================================================================
+ * Copyright (C) 2018 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.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.policy.xacml.pdp;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import org.junit.Test;
+import org.mockito.Mockito;
+import com.att.research.xacml.api.Request;
+import com.att.research.xacml.api.Response;
+import com.att.research.xacml.api.pdp.PDPException;
+import com.att.research.xacml.api.pdp.ScopeResolver;
+import com.att.research.xacmlatt.pdp.eval.EvaluationContextFactory;
+
+public class ONAPPDPEngineTest {
+ @Test
+ public void testEngine() throws PDPException {
+ EvaluationContextFactory factory = Mockito.mock(EvaluationContextFactory.class);
+ ScopeResolver resolver = Mockito.mock(ScopeResolver.class);
+ ONAPPDPEngine engine = new ONAPPDPEngine(factory, resolver);
+ assertNotNull(engine);
+
+ Request pepRequest = Mockito.mock(Request.class);
+ Response response = engine.decide(pepRequest);
+ assertEquals(1, response.getResults().size());
+ }
+}