Adding more testcases to misc module

Issue-ID: AAF-129
Change-Id: I11b0dcf8a8fa4d18909b1bd865ed053353bdace3
Signed-off-by: Sai Gandham <sg481n@att.com>
diff --git a/misc/log4j/.gitignore b/misc/log4j/.gitignore
index 45aeec6..453974f 100644
--- a/misc/log4j/.gitignore
+++ b/misc/log4j/.gitignore
@@ -1,5 +1,5 @@
-/target/
-/.settings/
-/.classpath
-/logs/
-/.project
+/target/

+/.settings/

+/.classpath

+/logs/

+/.project

diff --git a/misc/log4j/pom.xml b/misc/log4j/pom.xml
index bcd2d25..31d8f9f 100644
--- a/misc/log4j/pom.xml
+++ b/misc/log4j/pom.xml
@@ -245,12 +245,6 @@
 								<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>
diff --git a/misc/log4j/src/main/java/org/onap/aaf/misc/env/log4j/LogFileNamer.java b/misc/log4j/src/main/java/org/onap/aaf/misc/env/log4j/LogFileNamer.java
index cc4c8a9..a98ba7c 100644
--- a/misc/log4j/src/main/java/org/onap/aaf/misc/env/log4j/LogFileNamer.java
+++ b/misc/log4j/src/main/java/org/onap/aaf/misc/env/log4j/LogFileNamer.java
@@ -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);
-		}
-		
-	}
-}
+/**

+ * ============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);

+		}

+

+	}

+}

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
index 0000000..0ee79a5
--- /dev/null
+++ b/misc/log4j/src/test/java/org/onap/aaf/misc/env/log4j/JU_LogFileNamerTest.java
@@ -0,0 +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 static org.junit.Assert.assertEquals;

+

+import java.io.File;

+import java.io.IOException;

+import java.nio.file.Files;

+import java.nio.file.Paths;

+import java.text.SimpleDateFormat;

+import java.util.Date;

+

+import org.junit.After;

+import org.junit.Before;

+import org.junit.Test;

+

+public class JU_LogFileNamerTest {

+

+	private String ending = new SimpleDateFormat("YYYYMMdd").format(new Date());

+

+	@Before

+	public void setUp() throws Exception {

+	}

+

+	@Test

+	public void test() throws IOException {

+		LogFileNamer logFileNamer = new LogFileNamer(".", "log");

+		assertEquals(logFileNamer, logFileNamer.noPID());

+

+		logFileNamer.setAppender("Append");

+		assertEquals(System.getProperty("LOG4J_FILENAME_Append"), "./log-Append" + ending + "_0.log");

+

+		logFileNamer.setAppender("Append");

+		assertEquals(System.getProperty("LOG4J_FILENAME_Append"), "./log-Append" + ending + "_1.log");

+	}

+

+	@Test

+	public void testBlankRoot() throws IOException {

+		LogFileNamer logFileNamer = new LogFileNamer(".", "");

+		assertEquals(logFileNamer, logFileNamer.noPID());

+

+		logFileNamer.setAppender("Append");

+		assertEquals(System.getProperty("LOG4J_FILENAME_Append"), "./Append" + ending + "_0.log");

+

+		logFileNamer.setAppender("Append");

+		assertEquals(System.getProperty("LOG4J_FILENAME_Append"), "./Append" + ending + "_1.log");

+	}

+

+	@After

+	public void tearDown() throws IOException {

+		File file = new File("./log-Append" + ending + "_0.log");

+		if (file.exists()) {

+			Files.delete(Paths.get(file.getAbsolutePath()));

+		}

+		file = new File("./log-Append" + ending + "_1.log");

+		if (file.exists()) {

+			Files.delete(Paths.get(file.getAbsolutePath()));

+		}

+		file = new File("./Append" + ending + "_0.log");

+		if (file.exists()) {

+			Files.delete(Paths.get(file.getAbsolutePath()));

+		}

+		file = new File("./Append" + ending + "_1.log");

+		if (file.exists()) {

+			Files.delete(Paths.get(file.getAbsolutePath()));

+		}

+	}

+

+}