Adding more testcases to misc module 67/42867/1
authorSai Gandham <sg481n@att.com>
Sat, 14 Apr 2018 18:57:27 +0000 (18:57 +0000)
committerSai Gandham <sg481n@att.com>
Sat, 14 Apr 2018 18:57:34 +0000 (18:57 +0000)
Issue-ID: AAF-129
Change-Id: I11b0dcf8a8fa4d18909b1bd865ed053353bdace3
Signed-off-by: Sai Gandham <sg481n@att.com>
misc/log4j/.gitignore
misc/log4j/pom.xml
misc/log4j/src/main/java/org/onap/aaf/misc/env/log4j/LogFileNamer.java
misc/log4j/src/test/java/org/onap/aaf/misc/env/log4j/JU_LogFileNamerTest.java [new file with mode: 0644]

index 45aeec6..453974f 100644 (file)
@@ -1,5 +1,5 @@
-/target/
-/.settings/
-/.classpath
-/logs/
-/.project
+/target/\r
+/.settings/\r
+/.classpath\r
+/logs/\r
+/.project\r
index bcd2d25..31d8f9f 100644 (file)
                                                                <goal>prepare-agent</goal>
                                                        </goals>
                                                        <configuration>
-                                                               <skipTests>false</skipTests>
-                                                               <includes>
-                                                                       <include>**/JU*.java</include>
-                                                               </includes>
-                                                               <excludes>
-                                                               </excludes>
                                                                <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
                                                                <propertyName>surefireArgLine</propertyName>
                                                        </configuration>
index cc4c8a9..a98ba7c 100644 (file)
@@ -1,89 +1,88 @@
-/**
- * ============LICENSE_START====================================================
- * org.onap.aaf
- * ===========================================================================
- * Copyright (c) 2018 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====================================================
- *
- */
-
-package org.onap.aaf.misc.env.log4j;
-
-import java.io.File;
-import java.io.IOException;
-import java.net.URL;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-
-public class LogFileNamer {
-       private final String root;
-       private final String ending;
-       private final String dir; 
-       
-       public LogFileNamer(final String dir, final String root) {
-               this.dir = dir;
-               if(root==null || "".equals(root) || root.endsWith("/")) {
-                       this.root = root;
-               } else {
-                       this.root = root + "-";
-               }
-               ending = new SimpleDateFormat("YYYYMMdd").format(new Date());
-       }
-       
-       public LogFileNamer noPID() {
-               return this;
-       }
-       
-       private static final String FILE_FORMAT_STR = "%s/%s%s%s_%d.log";
-       /**
-        * Accepts a String.
-        * If Separated by "|" then first part is the Appender name, and the second is used in the FileNaming
-        * (This is to allow for shortened Logger names, and more verbose file names)
-        * ONAP: jna code has license issues.  Just do Date + Unique Number
-        * 
-        * @param appender
-        * 
-        * returns the String Appender
-        * @throws IOException 
-        */
-       public String setAppender(String appender) throws IOException {
-               String filename;
-               int i=0;
-               File f;
-               while((f=new File(filename=String.format(FILE_FORMAT_STR, dir,root, appender, ending,i))).exists()) {
-                       ++i;
-               };
-               f.createNewFile();
-               System.setProperty(
-                       "LOG4J_FILENAME_"+appender,
-                       filename);
-               return appender;
-       }
-
-       public void configure(final String path, final String fname, final String log_level) throws IOException {
-               final String fullPath=path+'/'+fname;
-               if(new File(fullPath).exists()) {
-                       org.apache.log4j.PropertyConfigurator.configureAndWatch(fullPath,60*1000L);
-               } else {
-                       URL rsrc = ClassLoader.getSystemResource(fname);
-                       if(rsrc==null) {
-                               String msg = "Neither File: " + path + '/' + fname + " nor resource on Classpath " + fname + " exist" ;
-                               throw new IOException(msg);
-                       }
-                       org.apache.log4j.PropertyConfigurator.configure(rsrc);
-               }
-               
-       }
-}
+/**\r
+ * ============LICENSE_START====================================================\r
+ * org.onap.aaf\r
+ * ===========================================================================\r
+ * Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.\r
+ * ===========================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END====================================================\r
+ *\r
+ */\r
+package org.onap.aaf.misc.env.log4j;\r
+\r
+import java.io.File;\r
+import java.io.IOException;\r
+import java.net.URL;\r
+import java.text.SimpleDateFormat;\r
+import java.util.Date;\r
+\r
+public class LogFileNamer {\r
+       private final String root;\r
+       private final String ending;\r
+       private final String dir;\r
+\r
+       public LogFileNamer(final String dir, final String root) {\r
+               this.dir = dir;\r
+               if (root == null || "".equals(root) || root.endsWith("/")) {\r
+                       this.root = root;\r
+               } else {\r
+                       this.root = root + "-";\r
+               }\r
+               ending = new SimpleDateFormat("YYYYMMdd").format(new Date());\r
+       }\r
+\r
+       public LogFileNamer noPID() {\r
+               return this;\r
+       }\r
+\r
+       private static final String FILE_FORMAT_STR = "%s/%s%s%s_%d.log";\r
+\r
+       /**\r
+        * Accepts a String. If Separated by "|" then first part is the Appender name,\r
+        * and the second is used in the FileNaming (This is to allow for shortened\r
+        * Logger names, and more verbose file names) ONAP: jna code has license issues.\r
+        * Just do Date + Unique Number\r
+        * \r
+        * @param appender\r
+        * \r
+        *            returns the String Appender\r
+        * @throws IOException\r
+        */\r
+       public String setAppender(String appender) throws IOException {\r
+               String filename;\r
+               int i = 0;\r
+               File f;\r
+               while ((f = new File(filename = String.format(FILE_FORMAT_STR, dir, root, appender, ending, i))).exists()) {\r
+                       ++i;\r
+               }\r
+               ;\r
+               f.createNewFile();\r
+               System.setProperty("LOG4J_FILENAME_" + appender, filename);\r
+               return appender;\r
+       }\r
+\r
+       public void configure(final String path, final String fname, final String log_level) throws IOException {\r
+               final String fullPath = path + '/' + fname;\r
+               if (new File(fullPath).exists()) {\r
+                       org.apache.log4j.PropertyConfigurator.configureAndWatch(fullPath, 60 * 1000L);\r
+               } else {\r
+                       URL rsrc = ClassLoader.getSystemResource(fname);\r
+                       if (rsrc == null) {\r
+                               String msg = "Neither File: " + path + '/' + fname + " nor resource on Classpath " + fname + " exist";\r
+                               throw new IOException(msg);\r
+                       }\r
+                       org.apache.log4j.PropertyConfigurator.configure(rsrc);\r
+               }\r
+\r
+       }\r
+}\r
diff --git a/misc/log4j/src/test/java/org/onap/aaf/misc/env/log4j/JU_LogFileNamerTest.java b/misc/log4j/src/test/java/org/onap/aaf/misc/env/log4j/JU_LogFileNamerTest.java
new file mode 100644 (file)
index 0000000..0ee79a5
--- /dev/null
@@ -0,0 +1,88 @@
+/**\r
+ * ============LICENSE_START====================================================\r
+ * org.onap.aaf\r
+ * ===========================================================================\r
+ * Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.\r
+ * ===========================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END====================================================\r
+ *\r
+ */\r
+package org.onap.aaf.misc.env.log4j;\r
+\r
+import static org.junit.Assert.assertEquals;\r
+\r
+import java.io.File;\r
+import java.io.IOException;\r
+import java.nio.file.Files;\r
+import java.nio.file.Paths;\r
+import java.text.SimpleDateFormat;\r
+import java.util.Date;\r
+\r
+import org.junit.After;\r
+import org.junit.Before;\r
+import org.junit.Test;\r
+\r
+public class JU_LogFileNamerTest {\r
+\r
+       private String ending = new SimpleDateFormat("YYYYMMdd").format(new Date());\r
+\r
+       @Before\r
+       public void setUp() throws Exception {\r
+       }\r
+\r
+       @Test\r
+       public void test() throws IOException {\r
+               LogFileNamer logFileNamer = new LogFileNamer(".", "log");\r
+               assertEquals(logFileNamer, logFileNamer.noPID());\r
+\r
+               logFileNamer.setAppender("Append");\r
+               assertEquals(System.getProperty("LOG4J_FILENAME_Append"), "./log-Append" + ending + "_0.log");\r
+\r
+               logFileNamer.setAppender("Append");\r
+               assertEquals(System.getProperty("LOG4J_FILENAME_Append"), "./log-Append" + ending + "_1.log");\r
+       }\r
+\r
+       @Test\r
+       public void testBlankRoot() throws IOException {\r
+               LogFileNamer logFileNamer = new LogFileNamer(".", "");\r
+               assertEquals(logFileNamer, logFileNamer.noPID());\r
+\r
+               logFileNamer.setAppender("Append");\r
+               assertEquals(System.getProperty("LOG4J_FILENAME_Append"), "./Append" + ending + "_0.log");\r
+\r
+               logFileNamer.setAppender("Append");\r
+               assertEquals(System.getProperty("LOG4J_FILENAME_Append"), "./Append" + ending + "_1.log");\r
+       }\r
+\r
+       @After\r
+       public void tearDown() throws IOException {\r
+               File file = new File("./log-Append" + ending + "_0.log");\r
+               if (file.exists()) {\r
+                       Files.delete(Paths.get(file.getAbsolutePath()));\r
+               }\r
+               file = new File("./log-Append" + ending + "_1.log");\r
+               if (file.exists()) {\r
+                       Files.delete(Paths.get(file.getAbsolutePath()));\r
+               }\r
+               file = new File("./Append" + ending + "_0.log");\r
+               if (file.exists()) {\r
+                       Files.delete(Paths.get(file.getAbsolutePath()));\r
+               }\r
+               file = new File("./Append" + ending + "_1.log");\r
+               if (file.exists()) {\r
+                       Files.delete(Paths.get(file.getAbsolutePath()));\r
+               }\r
+       }\r
+\r
+}\r