X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=auth%2Fauth-cmd%2Fsrc%2Ftest%2Fjava%2Forg%2Fonap%2Faaf%2Fauth%2Fcmd%2Ftest%2Fperm%2FJU_Create.java;h=6118e3d7658ae38286e6bc91f4c4957eb701f370;hb=1296352d8eafee57f982a4342ad79ada4aa56d28;hp=cd49d89342a3c5e0edad99b0fcb6be30a67c69de;hpb=0d04b7513ab8f5c3bd9967fad9772688113fe437;p=aaf%2Fauthz.git diff --git a/auth/auth-cmd/src/test/java/org/onap/aaf/auth/cmd/test/perm/JU_Create.java b/auth/auth-cmd/src/test/java/org/onap/aaf/auth/cmd/test/perm/JU_Create.java index cd49d893..6118e3d7 100644 --- a/auth/auth-cmd/src/test/java/org/onap/aaf/auth/cmd/test/perm/JU_Create.java +++ b/auth/auth-cmd/src/test/java/org/onap/aaf/auth/cmd/test/perm/JU_Create.java @@ -7,9 +7,9 @@ * * 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. @@ -19,86 +19,96 @@ * * * * ******************************************************************************/ -package org.onap.aaf.auth.cmd.test.perm; -import org.junit.Assert; -import org.junit.Before; +package org.onap.aaf.auth.cmd.test.perm; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.fail; -import static org.mockito.Mockito.mock; +import static org.mockito.Matchers.any; import static org.mockito.Mockito.when; +import java.io.ByteArrayOutputStream; +import java.io.PrintStream; import java.io.Writer; import java.net.HttpURLConnection; import java.net.URI; import java.net.URISyntaxException; -import org.junit.BeforeClass; +import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; +import org.mockito.Mock; +import org.mockito.MockitoAnnotations; import org.mockito.runners.MockitoJUnitRunner; import org.onap.aaf.auth.cmd.AAFcli; -import org.onap.aaf.auth.cmd.perm.Create; -import org.onap.aaf.auth.cmd.perm.Perm; -import org.onap.aaf.auth.cmd.role.Role; -import org.onap.aaf.auth.cmd.test.JU_AAFCli; +import org.onap.aaf.auth.cmd.ns.Create; +import org.onap.aaf.auth.cmd.ns.NS; +import org.onap.aaf.auth.cmd.test.HMangrStub; import org.onap.aaf.auth.env.AuthzEnv; import org.onap.aaf.cadi.CadiException; import org.onap.aaf.cadi.Locator; import org.onap.aaf.cadi.LocatorException; import org.onap.aaf.cadi.PropAccess; import org.onap.aaf.cadi.SecuritySetter; -import org.onap.aaf.cadi.Locator.Item; -import org.onap.aaf.cadi.http.HMangr; -import org.onap.aaf.cadi.http.HRcli; +import org.onap.aaf.cadi.client.Future; +import org.onap.aaf.cadi.client.Rcli; import org.onap.aaf.misc.env.APIException; @RunWith(MockitoJUnitRunner.class) public class JU_Create { - - private static Create create; - PropAccess prop; - AuthzEnv aEnv; - Writer wtr; - Locator loc; - HMangr hman; - AAFcli aafcli; - - @Before - public void setUp () throws NoSuchFieldException, SecurityException, Exception, IllegalAccessException { - prop = new PropAccess(); - aEnv = new AuthzEnv(); - wtr = mock(Writer.class); - loc = mock(Locator.class); - SecuritySetter secSet = mock(SecuritySetter.class); - hman = new HMangr(aEnv, loc); - aafcli = new AAFcli(prop, aEnv, wtr, hman, null, secSet); - Role role = new Role(aafcli); - Perm perm = new Perm(role); - create = new Create(perm); - - } - - @Test - public void testExec() throws APIException, LocatorException, CadiException, URISyntaxException { - Item value = mock(Item.class); - Locator.Item item = new Locator.Item() { - }; - when(loc.best()).thenReturn(value); - URI uri = new URI("http://java.sun.com/j2se/1.3/"); - when(loc.get(value)).thenReturn(uri); - SecuritySetter secSet = mock(SecuritySetter.class); - HRcli hcli = new HRcli(hman, uri, item, secSet); - String[] strArr = {"grant","ungrant","setTo","grant","ungrant","setTo"}; - create._exec(0, strArr); - - } - - @Test - public void testDetailedHelp() { - StringBuilder sb = new StringBuilder(); - create.detailedHelp(0, sb); - } - + + @Mock private SecuritySetter ssMock; + @Mock private Locator locMock; + @Mock private Writer wrtMock; + @Mock private Rcli clientMock; + @Mock private Future futureMock; + + private static Create create; + + private NS ns; + private PropAccess access; + private HMangrStub hman; + private AuthzEnv aEnv; + private AAFcli aafcli; + + @Before + public void setUp () throws NoSuchFieldException, SecurityException, Exception, IllegalAccessException { + MockitoAnnotations.initMocks(this); + + when(clientMock.create(any(), any(), any(String.class))).thenReturn(futureMock); + when(clientMock.delete(any(), any(), any(String.class))).thenReturn(futureMock); + when(clientMock.update(any(), any(), any(String.class))).thenReturn(futureMock); + + hman = new HMangrStub(access, locMock, clientMock); + access = new PropAccess(new PrintStream(new ByteArrayOutputStream()), new String[0]); + aEnv = new AuthzEnv(); + aafcli = new AAFcli(access, aEnv, wrtMock, hman, null, ssMock); + + ns = new NS(aafcli); + + create = new Create(ns); + } + + @Test + public void testError() throws APIException, LocatorException, CadiException, URISyntaxException { + create._exec(0, new String[] {"grant","ungrant","setTo","grant","ungrant","setTo"}); + create._exec(4, new String[] {"grant","ungrant","setTo","grant","ungrant","setTo"}); + } + + @Test + public void testSuccess1() throws APIException, LocatorException, CadiException, URISyntaxException { + when(futureMock.code()).thenReturn(202); + create._exec(0, new String[] {"grant","ungrant","setTo","grant","ungrant","setTo"}); + } + + @Test + public void testSuccess2() throws APIException, LocatorException, CadiException, URISyntaxException { + when(futureMock.get(any(Integer.class))).thenReturn(true); + create._exec(0, new String[] {"grant","ungrant","setTo","grant","ungrant","setTo"}); + } + + @Test + public void testDetailedHelp() { + StringBuilder sb = new StringBuilder(); + create.detailedHelp(0, sb); + } + }