Approval Batch, prep better JUnit
[aaf/authz.git] / misc / env / src / test / java / org / onap / aaf / misc / env / impl / JU_BasicEnvTest.java
1 /**\r
2  * ============LICENSE_START====================================================\r
3  * org.onap.aaf\r
4  * ===========================================================================\r
5  * Copyright (c) 2018 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  */\r
21 \r
22 package org.onap.aaf.misc.env.impl;\r
23 \r
24 import static org.junit.Assert.assertEquals;\r
25 import static org.junit.Assert.assertNull;\r
26 import static org.junit.Assert.assertTrue;\r
27 import static org.mockito.Mockito.mock;\r
28 \r
29 import java.applet.Applet;\r
30 import java.io.IOException;\r
31 import java.util.Properties;\r
32 \r
33 import org.junit.After;\r
34 import org.junit.Before;\r
35 import org.junit.Test;\r
36 import org.mockito.Mock;\r
37 import org.onap.aaf.misc.env.Decryptor;\r
38 import org.onap.aaf.misc.env.Encryptor;\r
39 import org.onap.aaf.misc.env.LogTarget;\r
40 import org.onap.aaf.misc.env.TimeTaken;\r
41 \r
42 public class JU_BasicEnvTest {\r
43 \r
44     @Mock\r
45     Decryptor decrypt;\r
46 \r
47     @Mock\r
48     Encryptor encrypt;\r
49 \r
50     @Before\r
51     public void setup() {\r
52         decrypt = mock(Decryptor.class);\r
53         encrypt = mock(Encryptor.class);\r
54     }\r
55 \r
56     @Test\r
57     public void testLogTarget() {\r
58         Properties prop = new Properties();\r
59         BasicEnv env = new BasicEnv(prop);\r
60 \r
61         assertEquals(env.fatal(), LogTarget.SYSERR);\r
62         assertEquals(env.error(), LogTarget.SYSERR);\r
63         assertEquals(env.audit(), LogTarget.SYSOUT);\r
64         assertEquals(env.warn(), LogTarget.SYSERR);\r
65         assertEquals(env.init(), LogTarget.SYSOUT);\r
66         assertEquals(env.info(), LogTarget.SYSOUT);\r
67         assertEquals(env.debug(), LogTarget.NULL);\r
68         assertEquals(env.trace(), LogTarget.NULL);\r
69 \r
70         env.debug(LogTarget.SYSOUT);\r
71         assertEquals(env.debug(), LogTarget.SYSOUT);\r
72 \r
73         assertNull(env.getProperty("key"));\r
74         assertEquals("default", env.getProperty("key", "default"));\r
75 \r
76         env.setProperty("key", "value");\r
77         assertEquals("value", env.getProperty("key", "default"));\r
78 \r
79         Properties filteredProperties = env.getProperties("key");\r
80         assertEquals(filteredProperties.size(), 1);\r
81 \r
82         env.setProperty("key", null);\r
83         assertEquals("default", env.getProperty("key", "default"));\r
84 \r
85         filteredProperties = env.getProperties("key1");\r
86         assertEquals(filteredProperties.size(), 0);\r
87 \r
88         filteredProperties = env.getProperties();\r
89         assertEquals(filteredProperties.size(), 0);\r
90 \r
91     }\r
92 \r
93     @Test\r
94     public void testBasicEnv() {\r
95         Applet applet = null;\r
96 \r
97         BasicEnv env = new BasicEnv(applet, "tag1", "tag2");\r
98 \r
99         TimeTaken tt = env.start("Name", 2);\r
100 \r
101         long end = tt.end();\r
102         StringBuilder sb = new StringBuilder();\r
103 \r
104         assertEquals(tt.toString(), "Name " + (end - tt.start) / 1000000f + "ms ");\r
105         tt.output(sb);\r
106         assertEquals(sb.toString(), "XML Name " + (end - tt.start) / 1000000f + "ms");\r
107 \r
108         env.set(decrypt);\r
109         assertEquals(env.decryptor(), decrypt);\r
110         env.set(encrypt);\r
111         assertEquals(env.encryptor(), encrypt);\r
112     }\r
113 \r
114     @Test\r
115     public void testBasicEnvDiffFlag() {\r
116         Properties prop = new Properties();\r
117 \r
118         BasicEnv env = new BasicEnv("tag1", prop);\r
119 \r
120         TimeTaken tt = env.start("Name", 1);\r
121 \r
122         long end = tt.end();\r
123         StringBuilder sb = new StringBuilder();\r
124 \r
125         assertEquals(tt.toString(), "Name " + (end - tt.start) / 1000000f + "ms ");\r
126         tt.output(sb);\r
127         assertEquals(sb.toString(), "REMOTE Name " + (end - tt.start) / 1000000f + "ms");\r
128 \r
129         tt = env.start("New Name", 4);\r
130         tt.size(10);\r
131         sb = new StringBuilder();\r
132         tt.output(sb);\r
133         assertEquals(tt.toString(), "New Name " + (end - tt.start) / 1000000f + "ms 10");\r
134         assertEquals(sb.toString(), "JSON New Name " + (end - tt.start) / 1000000f + "ms size: 10");\r
135 \r
136         env.staticSlot("tag", "prop");\r
137 \r
138         if (System.getProperties().keySet().iterator().hasNext()) {\r
139             String key = (String) System.getProperties().keySet().iterator().next();\r
140 \r
141             env.loadFromSystemPropsStartsWith(key);\r
142             assertEquals(env.getProperty(key), System.getProperties().get(key));\r
143         }\r
144 \r
145         BasicTrans trans = env.newTrans();\r
146         assertEquals(trans.delegate, env);\r
147 \r
148     }\r
149 \r
150     @Test\r
151     public void testLoadProperties() throws IOException {\r
152         Properties prop = new Properties();\r
153 \r
154         BasicEnv env = new BasicEnv("tag1", prop);\r
155 \r
156         env.loadPropFiles("tag1", null);\r
157         env.setProperty("tag1", "propfile.properties");\r
158         env.loadPropFiles("tag1", null);\r
159 \r
160         assertEquals(env.getProperty("prop1"), "New Property");\r
161 \r
162         env.loadToSystemPropsStartsWith("prop1");\r
163 \r
164         assertTrue(System.getProperties().keySet().contains("prop1"));\r
165         assertEquals(System.getProperties().get("prop1"), "New Property");\r
166     }\r
167 \r
168     @After\r
169     public void tearDown() throws IOException {\r
170         /*\r
171          * File file = new File("./log-Append" + ending + "_0.log"); if (file.exists())\r
172          * { Files.delete(Paths.get(file.getAbsolutePath())); } file = new\r
173          * File("./log-Append" + ending + "_1.log"); if (file.exists()) {\r
174          * Files.delete(Paths.get(file.getAbsolutePath())); } file = new File("./Append"\r
175          * + ending + "_0.log"); if (file.exists()) {\r
176          * Files.delete(Paths.get(file.getAbsolutePath())); } file = new File("./Append"\r
177          * + ending + "_1.log"); if (file.exists()) {\r
178          * Files.delete(Paths.get(file.getAbsolutePath())); }\r
179          */\r
180     }\r
181 }\r