2f305bb4f152efa91481330a3f341c7ba3fc1997
[aaf/authz.git] / authz-certman / src / test / java / org / onap / aaf / authz / cm / facade / JU_FacadeImpl.java
1 /*******************************************************************************\r
2  * ============LICENSE_START====================================================\r
3  * * org.onap.aaf\r
4  * * ===========================================================================\r
5  * * Copyright © 2017 AT&T Intellectual Property. All rights reserved.\r
6  * * ===========================================================================\r
7  * * Licensed under the Apache License, Version 2.0 (the "License");\r
8  * * you may not use this file except in compliance with the License.\r
9  * * You may obtain a copy of the License at\r
10  * * \r
11  *  *      http://www.apache.org/licenses/LICENSE-2.0\r
12  * * \r
13  *  * Unless required by applicable law or agreed to in writing, software\r
14  * * distributed under the License is distributed on an "AS IS" BASIS,\r
15  * * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
16  * * See the License for the specific language governing permissions and\r
17  * * limitations under the License.\r
18  * * ============LICENSE_END====================================================\r
19  * *\r
20  * * ECOMP is a trademark and service mark of AT&T Intellectual Property.\r
21  * *\r
22  ******************************************************************************/\r
23 package org.onap.aaf.authz.cm.facade;\r
24 \r
25 import static org.junit.Assert.*;\r
26 import static org.mockito.Mockito.CALLS_REAL_METHODS;\r
27 import static org.mockito.Mockito.mock;\r
28 import static org.mockito.Mockito.when;\r
29 \r
30 import java.io.IOException;\r
31 \r
32 import javax.servlet.ServletOutputStream;\r
33 import javax.servlet.http.HttpServletRequest;\r
34 import javax.servlet.http.HttpServletResponse;\r
35 import javax.xml.namespace.QName;\r
36 import javax.xml.validation.Schema;\r
37 \r
38 import org.junit.Before;\r
39 import org.junit.BeforeClass;\r
40 import org.junit.Test;\r
41 import org.junit.runner.RunWith;\r
42 import org.mockito.Mockito;\r
43 import org.mockito.runners.MockitoJUnitRunner;\r
44 import org.onap.aaf.authz.cm.facade.FacadeImpl;\r
45 import org.onap.aaf.authz.cm.mapper.Mapper;\r
46 import org.onap.aaf.authz.cm.service.CMService;\r
47 import org.onap.aaf.authz.cm.service.CertManAPI;\r
48 import org.onap.aaf.authz.env.AuthzEnv;\r
49 import org.onap.aaf.authz.env.AuthzTrans;\r
50 import org.onap.aaf.authz.layer.Result;\r
51 \r
52 import org.onap.aaf.cadi.aaf.AAFPermission;\r
53 import org.onap.aaf.cadi.aaf.v2_0.AAFLurPerm;\r
54 import org.onap.aaf.inno.env.APIException;\r
55 import org.onap.aaf.inno.env.Data;\r
56 import org.onap.aaf.inno.env.LogTarget;\r
57 import org.onap.aaf.inno.env.TimeTaken;\r
58 import org.onap.aaf.inno.env.Trans;\r
59 import org.onap.aaf.rosetta.env.RosettaDF;\r
60 import org.onap.aaf.rosetta.env.RosettaData;\r
61 \r
62 \r
63 @RunWith(MockitoJUnitRunner.class)\r
64 public class JU_FacadeImpl<REQ,CERT,ARTIFACTS,ERROR> {\r
65         \r
66         private static AuthzTrans trans;\r
67         private static HttpServletResponse resp;\r
68         private static CertManAPI certman;\r
69         private static FacadeImpl hImpl;\r
70         private static CMService service;\r
71         private Mapper<REQ,CERT,ARTIFACTS,ERROR> mapper;\r
72         private Data.TYPE dataType;\r
73         private static AuthzEnv env;\r
74         \r
75         private static FacadeImpl fImpl;\r
76         private static HttpServletRequest req;\r
77         \r
78         @Before\r
79         public void setUp() throws APIException, IOException {\r
80                 fImpl = mock(FacadeImpl.class);\r
81                 env = mock(AuthzEnv.class);\r
82                 resp = mock(HttpServletResponse.class);\r
83                 req = mock(HttpServletRequest.class);\r
84                 hImpl = mock(FacadeImpl.class, CALLS_REAL_METHODS);\r
85                 Result<Void> rvd = (Result) mock(Result.class);\r
86                 trans = mock(AuthzTrans.class);\r
87                 when(trans.error()).thenReturn(new LogTarget() {\r
88                         \r
89                         @Override\r
90                         public void printf(String fmt, Object... vars) {}\r
91                         \r
92                         @Override\r
93                         public void log(Throwable e, Object... msgs) {\r
94                                 e.getMessage();\r
95                                 e.printStackTrace();\r
96                                 msgs.toString();\r
97                                 \r
98                         }\r
99                         \r
100                         @Override\r
101                         public void log(Object... msgs) {\r
102                         }\r
103                         \r
104                         @Override\r
105                         public boolean isLoggable() {\r
106                                 \r
107                                 return false;\r
108                         }\r
109                 });\r
110                 when(trans.start(Mockito.anyString(), Mockito.anyInt())).thenReturn(new TimeTaken("Now", 1) {\r
111                         \r
112                         @Override\r
113                         public void output(StringBuilder sb) {\r
114                                 \r
115                         }\r
116                 });\r
117                 when(fImpl.check(Mockito.any(AuthzTrans.class), Mockito.any(HttpServletResponse.class), Mockito.anyString())).thenReturn(rvd);\r
118                 when(resp.getOutputStream()).thenReturn(new ServletOutputStream() {\r
119                         \r
120                         @Override\r
121                         public void write(int b) throws IOException {\r
122                                 \r
123                                 \r
124                         }\r
125                 });\r
126                 \r
127         }\r
128         \r
129         @Test\r
130         public void check() throws IOException {\r
131                 AAFPermission ap = new AAFPermission("str1","str3","str2");\r
132                 String perms = ap.getInstance();\r
133                 assertNotNull(hImpl.check(trans, resp, perms));\r
134         }\r
135         \r
136         @Test\r
137         public void checkNull() throws IOException {\r
138                 AAFPermission ap = new AAFPermission(null,"Str3","str2");\r
139                 String perms = ap.getInstance();\r
140                 assertNotNull(hImpl.check(trans, resp, perms));\r
141         }\r
142         \r
143         @Test\r
144         public void checkTwoNull() throws IOException {\r
145                 AAFPermission ap = new AAFPermission(null,null,"str2");\r
146                 String perms = ap.getInstance();\r
147                 assertNotNull(fImpl.check(trans, resp, perms));\r
148         }\r
149         \r
150         @Test\r
151         public void checkAllNull() throws IOException {\r
152                 AAFPermission ap = new AAFPermission(null,null,null);\r
153                 String perms = ap.getInstance();\r
154                 assertNotNull(fImpl.check(trans, resp, perms));\r
155         }\r
156         \r
157         @Test\r
158         public void checkTrans_null() throws IOException {\r
159                 AAFPermission ap = new AAFPermission("str1","str3","str2");\r
160                 String perms = ap.getInstance();\r
161                 assertNotNull(hImpl.check(null, resp, perms));\r
162         }\r
163         \r
164         @Test\r
165         public void checkRespNull() throws IOException {\r
166                 AAFPermission ap = new AAFPermission("str1","str3","str2");\r
167                 String perms = ap.getInstance();\r
168                 assertNotNull(hImpl.check(trans, null, perms));\r
169         }\r
170         \r
171         @Test\r
172         public void requestCert() {             \r
173                 assertNotNull(hImpl.requestCert(trans, req, resp, true));\r
174         }\r
175         \r
176         @Test\r
177         public void renewCert() {               \r
178                 assertNotNull(hImpl.renewCert(trans, req, resp, true));\r
179         }\r
180         \r
181         @Test\r
182         public void dropCert() {                \r
183                 assertNotNull(hImpl.renewCert(trans, req, resp, true));\r
184         }\r
185         \r
186         @Test\r
187         public void createArtifacts() {         \r
188                 assertNotNull(hImpl.createArtifacts(trans, req, resp));\r
189         }\r
190         \r
191         @Test\r
192         public void readArtifacts() {           \r
193                 assertNotNull(hImpl.readArtifacts(trans, req, resp));\r
194         }\r
195 }\r