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_Grant.java;h=02f3e13ae8c8aa2456886dfb1caa86520919e561;hb=1296352d8eafee57f982a4342ad79ada4aa56d28;hp=4c0ab53da2a2ed9f6919824808d66d338b21270b;hpb=67bac2c1c44beab7752b39584553449e1c8a4e94;p=aaf%2Fauthz.git diff --git a/auth/auth-cmd/src/test/java/org/onap/aaf/auth/cmd/test/perm/JU_Grant.java b/auth/auth-cmd/src/test/java/org/onap/aaf/auth/cmd/test/perm/JU_Grant.java index 4c0ab53d..02f3e13a 100644 --- a/auth/auth-cmd/src/test/java/org/onap/aaf/auth/cmd/test/perm/JU_Grant.java +++ b/auth/auth-cmd/src/test/java/org/onap/aaf/auth/cmd/test/perm/JU_Grant.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,56 +19,98 @@ * * * * ******************************************************************************/ + package org.onap.aaf.auth.cmd.test.perm; -import org.junit.Assert; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.fail; +import static org.mockito.Matchers.any; +import static org.mockito.Mockito.when; + +import org.junit.Before; + +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.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.Grant; -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.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.client.Future; +import org.onap.aaf.cadi.client.Rcli; import org.onap.aaf.misc.env.APIException; +import org.onap.aaf.auth.cmd.perm.Grant; +import org.onap.aaf.auth.cmd.perm.Perm; +import org.onap.aaf.auth.cmd.role.Role; +import org.onap.aaf.auth.cmd.test.HMangrStub; + @RunWith(MockitoJUnitRunner.class) public class JU_Grant { - -// private static Grant grant; -// -// @BeforeClass -// public static void setUp () throws NoSuchFieldException, SecurityException, Exception, IllegalAccessException { -// AAFcli cli = JU_AAFCli.getAAfCli(); -// Role role = new Role(cli); -// Perm perm = new Perm(role); -// grant = new Grant(perm); -// } -// -// @Test -// public void exec() { -// try { -// assertEquals(grant._exec(0, "add","del","reset","extend"),500); -// } catch (CadiException e) { -// // TODO Auto-generated catch block -// e.printStackTrace(); -// } catch (APIException e) { -// // TODO Auto-generated catch block -// e.printStackTrace(); -// } catch (LocatorException e) { -// // TODO Auto-generated catch block -// e.printStackTrace(); -// } -// } - - @Test //TODO: Temporary fix AAF-111 - public void netYetTested() { - Assert.assertTrue(true); - } + + private static Grant grant; + + @Mock private SecuritySetter ssMock; + @Mock private Locator locMock; + @Mock private Writer wrtMock; + @Mock private Rcli clientMock; + @Mock private Future futureMock; + + 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); + + Role role = new Role(aafcli); + Perm perm = new Perm(role); + + grant = new Grant(perm); + } + + @Test + public void testExecError() throws APIException, LocatorException, CadiException, URISyntaxException { + grant._exec(0, new String[] {"grant","type","instance","action","role"}); + } + + @Test + public void testExecSuccess1() throws APIException, LocatorException, CadiException, URISyntaxException { + when(futureMock.code()).thenReturn(202); + grant._exec(0, new String[] {"grant","type","instance","action","role"}); + + } + + @Test + public void testExecSuccess2() throws APIException, LocatorException, CadiException, URISyntaxException { + when(futureMock.get(any(Integer.class))).thenReturn(true); + grant._exec(0, new String[] {"grant","type","instance","action","role"}); + } + + @Test + public void testDetailedHelp() { + StringBuilder sb = new StringBuilder(); + grant.detailedHelp(0, sb); + } }