X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=ONAP-XACML%2Fsrc%2Ftest%2Fjava%2Forg%2Fonap%2Fpolicy%2Fxacml%2Ftest%2Fstd%2Fpap%2FStdEngineFactoryTest.java;h=2e0a0de17753ca37df40778865ac756ae3ff4e39;hb=c02b38c14ddeed80faebadc2c4dbe3cc6a056742;hp=3fa49551b5c2b77dcaed31adae329295a680dff6;hpb=073cc188efe9abb4c010cf674e34e2cf46ef1c52;p=policy%2Fengine.git diff --git a/ONAP-XACML/src/test/java/org/onap/policy/xacml/test/std/pap/StdEngineFactoryTest.java b/ONAP-XACML/src/test/java/org/onap/policy/xacml/test/std/pap/StdEngineFactoryTest.java index 3fa49551b..2e0a0de17 100644 --- a/ONAP-XACML/src/test/java/org/onap/policy/xacml/test/std/pap/StdEngineFactoryTest.java +++ b/ONAP-XACML/src/test/java/org/onap/policy/xacml/test/std/pap/StdEngineFactoryTest.java @@ -2,7 +2,7 @@ * ============LICENSE_START======================================================= * ONAP-XACML * ================================================================================ - * 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. @@ -20,6 +20,7 @@ package org.onap.policy.xacml.test.std.pap; import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; import java.io.IOException; import java.util.Properties; @@ -28,24 +29,50 @@ import org.junit.Test; import org.onap.policy.xacml.std.pap.StdEngineFactory; import com.att.research.xacml.api.pap.PAPException; +import com.att.research.xacml.std.pap.StdEngine; import com.att.research.xacml.util.FactoryException; public class StdEngineFactoryTest { + @Test + public void testStdEngineFactory() throws FactoryException, PAPException, IOException { + StdEngineFactory stdFactory = new StdEngineFactory(); + System.setProperty("xacml.pap.pdps", "src/test/resources/pdps"); + assertTrue(stdFactory.newEngine() != null); + Properties properties = new Properties(); + properties.setProperty("xacml.pap.pdps", "src/test/resources/pdps"); + assertTrue(stdFactory.newEngine(properties) != null); + StdEngineFactory stdFactoryNew = new StdEngineFactory(); + System.setProperty("xacml.pap.pdps", "src/test/resources/pdpstest"); + assertTrue(stdFactoryNew.newEngine() != null); + } - @Test - public void testStdEngineFactory() throws FactoryException, PAPException, IOException{ - - StdEngineFactory stdFactory = new StdEngineFactory(); - System.setProperty("xacml.pap.pdps", "src/test/resources/pdps"); - assertTrue(stdFactory.newEngine() != null); - Properties properties = new Properties(); - properties.setProperty("xacml.pap.pdps", "src/test/resources/pdps"); - assertTrue(stdFactory.newEngine(properties) != null); - - StdEngineFactory stdFactoryNew = new StdEngineFactory(); - System.setProperty("xacml.pap.pdps", "src/test/resources/pdpstest"); - assertTrue(stdFactoryNew.newEngine() != null); - - } + @Test + public void testNegativeCase() throws Exception { + // Setup test data + Properties props = new Properties(); + String tmpdir = System.getProperty("java.io.tmpdir"); + props.setProperty(StdEngine.PROP_PAP_REPO, tmpdir); + + // Set the system property temporarily + String systemKey = StdEngine.PROP_PAP_REPO; + String oldProperty = System.getProperty(systemKey); + System.setProperty(systemKey, tmpdir); + + // Test factory failure cases + try { + StdEngineFactory factory = new StdEngineFactory(); + factory.newEngine(); + factory.newEngine(props); + } catch (Exception ex) { + fail("Not expecting any exceptions: " + ex); + } + + // Restore the original system property + if (oldProperty != null) { + System.setProperty(systemKey, oldProperty); + } else { + System.clearProperty(systemKey); + } + } }