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 --- core/pom.xml | 137 ++++++++++++++------- .../java/org/onap/aaf/cadi/CadiExceptionTest.java | 61 +++++++++ core/src/test/java/org/onap/aaf/cadi/UserTest.java | 107 ++++++++++++++++ 3 files changed, 258 insertions(+), 47 deletions(-) create mode 100644 core/src/test/java/org/onap/aaf/cadi/CadiExceptionTest.java create mode 100644 core/src/test/java/org/onap/aaf/cadi/UserTest.java (limited to 'core') diff --git a/core/pom.xml b/core/pom.xml index a838ece..3088b20 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -52,6 +52,10 @@ + + org.mockito + mockito-all + javax.servlet servlet-api @@ -141,53 +145,92 @@ - org.jacoco - jacoco-maven-plugin - 0.7.7.201606060606 - - true - - - - pre-unit-test - - prepare-agent - - - ${project.build.directory}/coverage-reports/jacoco.exec - - - - - pre-integration-test - pre-integration-test - - prepare-agent - - - ${project.build.directory}/coverage-reports/jacoco-it.exec - - - - - - merge - - post-integration-test - - - - ${project.build.directory}/coverage-reports - - *.exec - - - - ${project.build.directory}/jacoco-dev.exec - - - - + org.jacoco + jacoco-maven-plugin + ${jacoco.version} + + + + **/gen/** + **/generated-sources/** + **/yang-gen/** + **/pax/** + + + + + + pre-unit-test + + prepare-agent + + + + ${project.build.directory}/code-coverage/jacoco-ut.exec + + surefireArgLine + + + + + post-unit-test + test + + report + + + + ${project.build.directory}/code-coverage/jacoco-ut.exec + + ${project.reporting.outputDirectory}/jacoco-ut + + + + pre-integration-test + pre-integration-test + + prepare-agent + + + + ${project.build.directory}/code-coverage/jacoco-it.exec + + failsafeArgLine + + + + + post-integration-test + post-integration-test + + report + + + + ${project.build.directory}/code-coverage/jacoco-it.exec + + ${project.reporting.outputDirectory}/jacoco-it + + + + + diff --git a/core/src/test/java/org/onap/aaf/cadi/CadiExceptionTest.java b/core/src/test/java/org/onap/aaf/cadi/CadiExceptionTest.java new file mode 100644 index 0000000..29a0a8b --- /dev/null +++ b/core/src/test/java/org/onap/aaf/cadi/CadiExceptionTest.java @@ -0,0 +1,61 @@ +/******************************************************************************* + * ============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; + +import static org.hamcrest.CoreMatchers.is; +import static org.junit.Assert.*; + +import org.junit.Test; + +public class CadiExceptionTest { + + @Test + public void testCadiException() { + CadiException exception = new CadiException(); + + assertNotNull(exception); + } + + @Test + public void testCadiExceptionString() { + CadiException exception = new CadiException("New Exception"); + assertNotNull(exception); + assertThat(exception.getMessage(), is("New Exception")); + } + + @Test + public void testCadiExceptionThrowable() { + CadiException exception = new CadiException(new Throwable("New Exception")); + assertNotNull(exception); + assertThat(exception.getMessage(), is("java.lang.Throwable: New Exception")); + } + + @Test + public void testCadiExceptionStringThrowable() { + CadiException exception = new CadiException("New Exception",new Throwable("New Exception")); + assertNotNull(exception); + assertThat(exception.getMessage(), is("New Exception")); + + } + +} diff --git a/core/src/test/java/org/onap/aaf/cadi/UserTest.java b/core/src/test/java/org/onap/aaf/cadi/UserTest.java new file mode 100644 index 0000000..3e8254b --- /dev/null +++ b/core/src/test/java/org/onap/aaf/cadi/UserTest.java @@ -0,0 +1,107 @@ +/******************************************************************************* + * ============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; + +import static org.hamcrest.CoreMatchers.is; +import static org.junit.Assert.*; +import static org.mockito.Mockito.when; + +import java.security.Principal; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.junit.Before; +import org.junit.Test; +import org.mockito.Mock; +import org.mockito.MockitoAnnotations; +import org.onap.aaf.cadi.lur.LocalPermission; + +public class UserTest { + + @Mock + private Principal principal; + + @Mock + private LocalPermission permission; + + @Before + public void setup() { + MockitoAnnotations.initMocks(this); + + when(principal.getName()).thenReturn("Principal"); + + when(permission.getKey()).thenReturn("NewKey"); + when(permission.match(permission)).thenReturn(true); + } + + @Test + public void testCountCheck() { + User user = new User(principal); + user.resetCount(); + assertThat(user.count, is(0)); + user.incCount(); + assertThat(user.count, is(1)); + } + + @Test + public void testPerm() throws InterruptedException { + User user = new User(principal); + assertThat(user.permExpires(), is(Long.MAX_VALUE)); + user.renewPerm(); + Thread.sleep(1); + assertThat(user.permExpired(), is(true)); + user = new User(principal,100); + assertTrue(user.noPerms()); + user.add(permission); + assertFalse(user.noPerms()); + user.setNoPerms(); + assertThat(user.permExpired(), is(false)); + assertFalse(user.permsUnloaded()); + user.perms = null; + assertTrue(user.permsUnloaded()); + assertTrue(user.noPerms()); + } + + @Test + public void testAddValuesToNewMap() { + User user = new User(principal); + Map newMap = new HashMap(); + + assertFalse(user.contains(permission)); + + user.add(newMap, permission); + user.setMap(newMap); + + assertTrue(user.contains(permission)); + + List sink = new ArrayList(); + user.copyPermsTo(sink); + + assertThat(sink.size(), is(1)); + assertTrue(sink.contains(permission)); + + assertThat(user.toString(), is("Principal|:NewKey")); + } +} -- cgit 1.2.3-korg