From 3ceb063fb173412ad0f499ec07a753f678a80232 Mon Sep 17 00:00:00 2001 From: Sai Gandham Date: Mon, 18 Feb 2019 09:30:05 -0600 Subject: Add more junits to auth-batch Issue-ID: AAF-111 Change-Id: I4159ef44c88af6d80da0243d6532f9e422ae6f12 Signed-off-by: Sai Gandham --- .../org/onap/aaf/cadi/aaf/v2_0/JU_AAFAuthn.java | 204 +++++++++++++++++++++ .../aaf/cadi/aaf/v2_0/JU_AAFSingleLocator.java | 138 ++++++++++++++ 2 files changed, 342 insertions(+) create mode 100644 cadi/aaf/src/test/java/org/onap/aaf/cadi/aaf/v2_0/JU_AAFAuthn.java create mode 100644 cadi/aaf/src/test/java/org/onap/aaf/cadi/aaf/v2_0/JU_AAFSingleLocator.java (limited to 'cadi') diff --git a/cadi/aaf/src/test/java/org/onap/aaf/cadi/aaf/v2_0/JU_AAFAuthn.java b/cadi/aaf/src/test/java/org/onap/aaf/cadi/aaf/v2_0/JU_AAFAuthn.java new file mode 100644 index 00000000..41b519b1 --- /dev/null +++ b/cadi/aaf/src/test/java/org/onap/aaf/cadi/aaf/v2_0/JU_AAFAuthn.java @@ -0,0 +1,204 @@ +/** + * ============LICENSE_START==================================================== + * org.onap.aaf + * =========================================================================== + * 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.aaf.cadi.aaf.v2_0; + +import static org.junit.Assert.assertNull; +import static org.junit.Assert.assertTrue; +import static org.mockito.MockitoAnnotations.initMocks; + +import java.io.IOException; + +import org.junit.Before; +import org.junit.Test; +import org.mockito.Mock; +import org.mockito.Mockito; +import org.onap.aaf.cadi.AbsUserCache; +import org.onap.aaf.cadi.PropAccess; +import org.onap.aaf.cadi.User; +import org.onap.aaf.cadi.aaf.AAFPermission; +import org.onap.aaf.cadi.client.Future; +import org.onap.aaf.cadi.client.Rcli; +import org.onap.aaf.cadi.principal.BasicPrincipal; + +public class JU_AAFAuthn { + + @Mock + AAFCon con; + + @Mock + AbsUserCache cache; + + @Mock + PropAccess propaccess; + + @Before + public void setUp() { + initMocks(this); + } + + @Test + public void testGetRealm() { + AAFAuthn authnObj = new AAFAuthn(con); + String realm = authnObj.getRealm(); + assertNull(realm); + } + + @Test + public void testValidateFailure() { + AAFAuthnImplWithGetUserNull authnObj = new AAFAuthnImplWithGetUserNull(con, cache); + String realm=""; + try { + Mockito.doReturn("test").when(propaccess).decrypt("test", false); + realm = authnObj.validate("test", "test"); + assertNull(realm); + } catch (Exception e) { + // TODO Auto-generated catch block + assertNull( e.getLocalizedMessage()); + } + } + + @Test + public void testValidate() { + AAFAuthnImpl authnObj = new AAFAuthnImpl(con); + String realm=""; + try { + Mockito.doReturn("test").when(propaccess).decrypt("test", false); + Rcli rcliObj = Mockito.mock(Rcli.class); + Mockito.doReturn(rcliObj).when(con).client(); + Mockito.doReturn(rcliObj).when(rcliObj).forUser(null); + Future futureObj = Mockito.mock(Future.class); + Mockito.doReturn(futureObj).when(rcliObj).read( "/authn/basicAuth","text/plain"); + realm = authnObj.validate("test", "test","test"); + assertTrue(realm.contains("User/Pass combo invalid")); + } catch (Exception e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + + @Test + public void testValidateRevalidate() { + AAFAuthnImpl authnObj = new AAFAuthnImpl(con); + String realm=""; + try { + Mockito.doReturn("test").when(propaccess).decrypt("test", false); + Rcli rcliObj = Mockito.mock(Rcli.class); + Mockito.doReturn(rcliObj).when(con).client(); + Mockito.doReturn(rcliObj).when(rcliObj).forUser(null); + Future futureObj = Mockito.mock(Future.class); + Mockito.doReturn(futureObj).when(rcliObj).read( "/authn/basicAuth","text/plain"); + Mockito.doReturn(true).when(futureObj).get( 0); + realm = authnObj.validate("test", "test","test"); + assertNull(realm); + } catch (Exception e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + + @Test + public void testValidateValidUser() { + AAFAuthnImplWithGetUser authnObj = new AAFAuthnImplWithGetUser(con); + String realm=""; + try { + Mockito.doReturn("test").when(propaccess).decrypt("test", false); + realm = authnObj.validate("test", "test","test"); + assertTrue(realm.contains("User already denied")); + } catch (Exception e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + + @Test + public void testValidateValidUserNull() { + AAFAuthnImplWithGetUserNull authnObj = new AAFAuthnImplWithGetUserNull(con); + String realm=""; + try { + Mockito.doReturn("test").when(propaccess).decrypt("test", false); + realm = authnObj.validate("test", "test","test"); + assertNull(realm); + } catch (Exception e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + class AAFAuthnImpl extends AAFAuthn{ + AAFAuthnImpl(AAFCon con) { + super(con); + this.access = propaccess; + // TODO Auto-generated constructor stub + } + + AAFAuthnImpl(AAFCon con, AbsUserCache cache) { + super(con, cache); + this.access = propaccess; + // TODO Auto-generated constructor stub + } + + + } + + class AAFAuthnImplWithGetUser extends AAFAuthn{ + AAFAuthnImplWithGetUser(AAFCon con) { + super(con); + this.access = propaccess; + // TODO Auto-generated constructor stub + } + + AAFAuthnImplWithGetUser(AAFCon con, AbsUserCache cache) { + super(con, cache); + this.access = propaccess; + // TODO Auto-generated constructor stub + } + + @Override + protected User getUser(String user, byte[] cred) { + return new User<>("test",new byte[] {}); + } + } + + class AAFAuthnImplWithGetUserNull extends AAFAuthn{ + AAFAuthnImplWithGetUserNull(AAFCon con) { + super(con); + this.access = propaccess; + // TODO Auto-generated constructor stub + } + + AAFAuthnImplWithGetUserNull(AAFCon con, AbsUserCache cache) { + super(con, cache); + this.access = propaccess; + // TODO Auto-generated constructor stub + } + + @Override + protected User getUser(String user, byte[] cred) { + User user1 = null; + try { + user1 = new User(new BasicPrincipal("test","test")); + } catch (IOException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + return user1; + } + } +} diff --git a/cadi/aaf/src/test/java/org/onap/aaf/cadi/aaf/v2_0/JU_AAFSingleLocator.java b/cadi/aaf/src/test/java/org/onap/aaf/cadi/aaf/v2_0/JU_AAFSingleLocator.java new file mode 100644 index 00000000..488c2857 --- /dev/null +++ b/cadi/aaf/src/test/java/org/onap/aaf/cadi/aaf/v2_0/JU_AAFSingleLocator.java @@ -0,0 +1,138 @@ +/** + * ============LICENSE_START==================================================== + * org.onap.aaf + * =========================================================================== + * 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.aaf.cadi.aaf.v2_0; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNull; +import static org.junit.Assert.assertTrue; +import static org.mockito.MockitoAnnotations.initMocks; + +import java.net.URI; +import java.net.URISyntaxException; + +import org.junit.Before; +import org.junit.Test; +import org.mockito.Mock; +import org.mockito.Mockito; +import org.onap.aaf.cadi.AbsUserCache; +import org.onap.aaf.cadi.Locator; +import org.onap.aaf.cadi.LocatorException; +import org.onap.aaf.cadi.PropAccess; +import org.onap.aaf.cadi.aaf.AAFPermission; + + +public class JU_AAFSingleLocator { + + @Mock + AAFCon con; + + @Mock + AbsUserCache cache; + + @Mock + PropAccess propaccess; + + + AAFSingleLocator authnObj; + + @Before + public void setUp() { + initMocks(this); + try { + authnObj = new AAFSingleLocator("http://www.google.com"); + } catch (URISyntaxException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + + @Test + public void testGetRealm() { + try { + URI retVal = authnObj.get(Mockito.mock( Locator.Item.class)); + assertEquals("www.google.com",retVal.getHost()); + } catch (LocatorException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + + @Test + public void testHasItem() { + boolean retVal = authnObj.hasItems(); + assertTrue(retVal); + } + + @Test + public void testInvalidate() { + try { + authnObj.invalidate(Mockito.mock( Locator.Item.class)); + } catch (LocatorException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + + @Test + public void testBest() { + try { + Locator.Item retVal = authnObj.best(); + assertTrue(retVal.toString().contains("org.onap.aaf.cadi.aaf.v2_0.AAFSingleLocator$SingleItem")); + } catch (LocatorException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + @Test + public void testFirst() { + try { + Locator.Item retVal = authnObj.first(); + assertTrue(retVal.toString().contains("org.onap.aaf.cadi.aaf.v2_0.AAFSingleLocator$SingleItem")); + } catch (LocatorException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + @Test + public void testNext() { + try { + Locator.Item retVal = authnObj.next(Mockito.mock( Locator.Item.class)); + assertNull(retVal); + } catch (LocatorException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + + @Test + public void testRefres() { + boolean retVal = authnObj.refresh(); + assertFalse(retVal); + } + + @Test + public void testdestroy() { + authnObj.destroy(); + } + + +} -- cgit 1.2.3-korg