From 7bc6ef245901a83da234c7765d76a7f7eb34540a Mon Sep 17 00:00:00 2001 From: sg481n Date: Sun, 1 Oct 2017 19:47:49 +0000 Subject: Improve code coverage for aaf cadi modules Issue-ID: AAF-79 Change-Id: I9e12b64024aaa5dad13965fdbfc474c330bae864 Signed-off-by: sg481n --- .../java/org/onap/aaf/cadi/aaf/cass/JU_CASS.java | 106 +++++++++++++++++++++ 1 file changed, 106 insertions(+) create mode 100644 cass/src/test/java/org/onap/aaf/cadi/aaf/cass/JU_CASS.java (limited to 'cass/src/test/java/org/onap/aaf/cadi/aaf/cass/JU_CASS.java') diff --git a/cass/src/test/java/org/onap/aaf/cadi/aaf/cass/JU_CASS.java b/cass/src/test/java/org/onap/aaf/cadi/aaf/cass/JU_CASS.java new file mode 100644 index 0000000..bce8e0b --- /dev/null +++ b/cass/src/test/java/org/onap/aaf/cadi/aaf/cass/JU_CASS.java @@ -0,0 +1,106 @@ +/******************************************************************************* + * ============LICENSE_START==================================================== + * * org.onap.aaf + * * =========================================================================== + * * Copyright © 2017 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==================================================== + * * + * * ECOMP is a trademark and service mark of AT&T Intellectual Property. + * * + ******************************************************************************/ +package org.onap.aaf.cadi.aaf.cass; + +import java.util.HashMap; +import java.util.Map; +import java.util.Set; + +import org.apache.cassandra.auth.AuthenticatedUser; +import org.apache.cassandra.auth.IResource; +import org.apache.cassandra.auth.Permission; +import org.junit.AfterClass; +import org.junit.Assert; +import org.junit.BeforeClass; +import org.junit.Test; +import org.onap.aaf.cadi.aaf.cass.AAFAuthenticator; +import org.onap.aaf.cadi.aaf.cass.AAFAuthorizer; + +public class JU_CASS { + + private static AAFAuthenticator aa; + private static AAFAuthorizer an; + + @BeforeClass + public static void setUpBeforeClass() throws Exception { + System.setProperty("cadi_prop_files", "etc/cadi.properties"); + + aa = new AAFAuthenticator(); + an = new AAFAuthorizer(); + + aa.setup(); + an.setup(); // does nothing after aa. + + aa.validateConfiguration(); + + } + + @AfterClass + public static void tearDownAfterClass() throws Exception { + } + + @Test + public void test() throws Exception { + Map creds = new HashMap(); + creds.put("username", "XXX@NS"); + creds.put("password", "enc:???"); + AuthenticatedUser aaf = aa.authenticate(creds); + + // Test out "aaf_default_domain + creds.put("username", "XX"); + aaf = aa.authenticate(creds); + + IResource resource = new IResource() { + public String getName() { + return "data/authz"; + } + + public IResource getParent() { + return null; + } + + public boolean hasParent() { + return false; + } + + public boolean exists() { + return true; + } + + }; + + Set perms = an.authorize(aaf, resource); + + // Test out "AAF" access + creds.put("username", "XXX@NS"); + creds.put("password", "enc:???"); + aaf = aa.authenticate(creds); + perms = an.authorize(aaf, resource); + Assert.assertFalse(perms.isEmpty()); + + perms = an.authorize(aaf, resource); + Assert.assertFalse(perms.isEmpty()); + + } + +} -- cgit 1.2.3-korg