aboutsummaryrefslogtreecommitdiffstats
path: root/LogParser/src/test/java/org/openecomp/xacml/parser/ParseLogTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'LogParser/src/test/java/org/openecomp/xacml/parser/ParseLogTest.java')
-rw-r--r--LogParser/src/test/java/org/openecomp/xacml/parser/ParseLogTest.java382
1 files changed, 382 insertions, 0 deletions
diff --git a/LogParser/src/test/java/org/openecomp/xacml/parser/ParseLogTest.java b/LogParser/src/test/java/org/openecomp/xacml/parser/ParseLogTest.java
new file mode 100644
index 000000000..08df57a9b
--- /dev/null
+++ b/LogParser/src/test/java/org/openecomp/xacml/parser/ParseLogTest.java
@@ -0,0 +1,382 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * LogParser
+ * ================================================================================
+ * Copyright (C) 2017 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.openecomp.xacml.parser;
+
+import static org.junit.Assert.*;
+
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.text.SimpleDateFormat;
+import java.util.Collections;
+import java.util.Date;
+import java.util.Properties;
+
+import org.openecomp.policy.common.im.AdministrativeStateException;
+import org.openecomp.policy.common.im.IntegrityMonitor;
+import org.openecomp.policy.common.im.StandbyStatusException;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.Mockito;
+import org.openecomp.xacml.parser.LogEntryObject;
+import org.openecomp.xacml.parser.ParseLog;
+import org.openecomp.xacml.parser.LogEntryObject.LOGTYPE;
+
+
+public class ParseLogTest {
+
+ private ParseLog logParser = new ParseLog();
+ private Properties config = new Properties();
+ private String configFile = "test_config.properties";
+ private static Properties myProp;
+ private static Properties systemProps;
+ private static String resourceName;
+ private IntegrityMonitor im;
+
+
+ @Before
+ public void setUp() throws Exception {
+ System.setProperty("com.sun.management.jmxremote.port", "9998");
+ im = Mockito.mock(IntegrityMonitor.class);
+
+ // Need PowerMockito for mocking static method getInstance(...)
+ // PowerMockito.mockStatic(IntegrityMonitor.class);
+
+ try {
+ Mockito.doNothing().when(im).startTransaction();
+ } catch (StandbyStatusException | AdministrativeStateException e) {
+ fail();
+ }
+ Mockito.doNothing().when(im).endTransaction();
+
+ }
+
+ @After
+ public void tearDown() {
+ File file = new File("nonExistFile.txt");
+ file.delete();
+// systemProps.remove("com.sun.management.jmxremote.port");
+ }
+
+ @Test
+ public void testMain() {
+ try {
+
+ logParser.main(null);
+ } catch (Exception e) {
+ //fail();
+ }
+ }
+
+ @Test
+ public void testCountLines() throws IOException {
+ String fileName = "LineTest.txt";
+ int returnValue = logParser.countLines(fileName);
+
+ assertEquals(9, returnValue);
+ }
+
+ @Test
+ public void testParseRemoteSystem() {
+ String line = "||org.openecomp.policy.pap.xacml.rest.XACMLPapServlet$Heartbeat.run(XACMLPapServlet.java:2801)||Heartbeat 'https://localhost:8081/pdp/' status='UP_TO_DATE'";
+ String returnValue = ParseLog.parseRemoteSystem(line);
+ assertEquals("localhost:8081", returnValue);
+ }
+
+ @Test
+ public void testGetPropertiesValue() {
+ config = new Properties();
+ config.put("RESOURCE_NAME", "logparser_pap01");
+ config.put("JDBC_DRIVER" ,"com.mysql.jdbc.Driver");
+ config.put("JDBC_URL", "jdbc:mysql://localhost:3306/");
+ config.put("JDBC_USER", "root");
+ config.put("JDBC_PASSWORD", "password");
+ config.put("JMX_URL", "service:jmx:rmi:///jndi/rmi://localhost:9998/jmxrmi");
+ config.put("SERVER", "password");
+ config.put("JDBC_PASSWORD", "https://localhost:9091/pap/");
+ config.put("LOGTYPE", "PAP");
+ config.put("LOGPATH", "C:\\Workspaces\\HealthCheck\\pap-rest.log");
+ config.put("PARSERLOGPATH", "IntegrityMonitor.log");
+
+ Properties returnConfig = logParser.getPropertiesValue(configFile);
+
+
+ assertEquals(config.get("RESOURCE_NAME"), returnConfig.get("RESOURCE_NAME"));
+ }
+
+ @Test
+ public void testGetPropertiesFail() {
+ Properties returnValue = ParseLog.getPropertiesValue("nonExistFile");
+
+ assertEquals(null, returnValue);
+ }
+
+ @Test
+ public void testParseDate(){
+ String line = "2016-02-23 08:07:30";
+ Date returnValue = ParseLog.parseDate(line, "yyyy-MM-dd HH:mm:ss", false);
+
+ assertEquals("Tue Feb 23 08:07:30 CST 2016", returnValue.toString());
+ }
+
+ @Test
+ public void testParseDateFail(){
+ String line = "2016-02-23 08:07:30";
+ Date returnValue = ParseLog.parseDate(line, "yyyy-MM-dd HH:mm:ss", true);
+
+ assertEquals(null, returnValue);
+ }
+
+ @Test
+ public void testPullLastLineRead(){
+
+ File file = new File("LineTest.txt");
+ String returnValue = null;
+ try {
+ returnValue = ParseLog.PullLastLineRead(file).trim();
+ } catch (IOException e) {
+ fail();
+ }
+ assertEquals("12", returnValue);
+
+ }
+
+ @Test
+ public void testPullLastLineReadNoFile(){
+
+ File file = new File("nonExistFile.txt");
+ try {
+ assertEquals(null, ParseLog.PullLastLineRead(file));
+ } catch (IOException e) {
+ fail();
+ }
+ }
+ @Test
+ public void testPullLastLineReadFail(){
+
+ File file = new File("LineTest2.txt");
+ try {
+ assertEquals(null, ParseLog.PullLastLineRead(file));
+ } catch (IOException e) {
+ fail();
+ }
+ }
+
+ @Test
+ public void testPullOutLogValues(){
+ //ERROR_VALUE
+ // Open the file
+ FileInputStream fstream;
+ try {
+ fstream = new FileInputStream("LineTest.txt");
+ BufferedReader br = new BufferedReader(new InputStreamReader(fstream));
+ String strLine = br.readLine();
+ LogEntryObject retrunObject = ParseLog.pullOutLogValues(strLine, "ERROR");
+ assertEquals("ERROR_VALUE", retrunObject.getDescription());
+ br.close();
+ } catch (IOException e) {
+ fail();
+ }
+// assert(true);
+ }
+ @Test
+ public void testPullOutLogValuesSecond(){
+ //ERROR_VALUE
+ // Open the file
+ FileInputStream fstream;
+ try {
+ fstream = new FileInputStream("LineTest.txt");
+ BufferedReader br = new BufferedReader(new InputStreamReader(fstream));
+ String strLine = br.readLine();
+ strLine = br.readLine();
+ LogEntryObject retrunObject = ParseLog.pullOutLogValues(strLine, "INFO");
+ assertEquals(LOGTYPE.INFO, retrunObject.getLogType());
+ br.close();
+ } catch (IOException e) {
+ fail();
+ }
+ }
+
+ @Test
+ public void testPullOutLogValuesThird(){
+ //ERROR_VALUE
+ // Open the file
+ FileInputStream fstream;
+ try {
+ int number = 3;
+ fstream = new FileInputStream("LineTest.txt");
+ BufferedReader br = new BufferedReader(new InputStreamReader(fstream));
+ String strLine = br.readLine();
+ for (int i =0; i < number; i++){
+ strLine = br.readLine();
+ }
+ LogEntryObject retrunObject = ParseLog.pullOutLogValues(strLine, "PAP");
+ assertEquals(LOGTYPE.INFO, retrunObject.getLogType());
+ br.close();
+ } catch (IOException e) {
+ fail();
+ }
+ }
+
+ @Test
+ public void testPullOutLogValuesFourth(){
+ // Open the file
+ FileInputStream fstream;
+ try {
+ int number = 4;
+ fstream = new FileInputStream("LineTest.txt");
+ BufferedReader br = new BufferedReader(new InputStreamReader(fstream));
+ String strLine = br.readLine();
+ for (int i =0; i < number; i++){
+ strLine = br.readLine();
+ }
+ LogEntryObject retrunObject = ParseLog.pullOutLogValues(strLine, "PAP");
+ assertEquals(LOGTYPE.INFO, retrunObject.getLogType());
+ br.close();
+ } catch (IOException e) {
+ fail();
+ }
+ }
+
+ @Test
+ public void testPullOutLogValuesFith(){
+ // Open the file
+ FileInputStream fstream;
+ try {
+ int number = 5;
+ fstream = new FileInputStream("LineTest.txt");
+ BufferedReader br = new BufferedReader(new InputStreamReader(fstream));
+ String strLine = br.readLine();
+ for (int i =0; i < number; i++){
+ strLine = br.readLine();
+ }
+ LogEntryObject retrunObject = ParseLog.pullOutLogValues(strLine, "PyPDP");
+ assertEquals(LOGTYPE.WARN, retrunObject.getLogType());
+ br.close();
+ } catch (IOException e) {
+ fail();
+ }
+ }
+
+ @Test
+ public void testPullOutLogValuesSixth(){
+ // Open the file
+ FileInputStream fstream;
+ try {
+ int number = 6;
+ fstream = new FileInputStream("LineTest.txt");
+ BufferedReader br = new BufferedReader(new InputStreamReader(fstream));
+ String strLine = br.readLine();
+ for (int i =0; i < number; i++){
+ strLine = br.readLine();
+ }
+ LogEntryObject retrunObject = ParseLog.pullOutLogValues(strLine, "PyPDP");
+ assertEquals(LOGTYPE.SEVERE, retrunObject.getLogType());
+ br.close();
+ } catch (IOException e) {
+ fail();
+ }
+ }
+
+ @Test
+ public void testPullOutLogValuesSeven(){
+ // Open the file
+ FileInputStream fstream;
+ try {
+ int number = 7;
+ fstream = new FileInputStream("LineTest.txt");
+ BufferedReader br = new BufferedReader(new InputStreamReader(fstream));
+ String strLine = br.readLine();
+ for (int i =0; i < number; i++){
+ strLine = br.readLine();
+ }
+ LogEntryObject retrunObject = ParseLog.pullOutLogValues(strLine, "Console");
+ assertEquals(LOGTYPE.ERROR, retrunObject.getLogType());
+ br.close();
+ } catch (IOException e) {
+ fail();
+ }
+ }
+
+ @Test
+ public void testPullOutLogValuesEight(){
+ // Open the file
+ FileInputStream fstream;
+ try {
+ int number = 8;
+ fstream = new FileInputStream("LineTest.txt");
+ BufferedReader br = new BufferedReader(new InputStreamReader(fstream));
+ String strLine = br.readLine();
+ for (int i =0; i < number; i++){
+ strLine = br.readLine();
+ }
+ LogEntryObject retrunObject = ParseLog.pullOutLogValues(strLine, "pap");
+ assertEquals(LOGTYPE.WARN, retrunObject.getLogType());
+ br.close();
+ } catch (IOException e) {
+ fail();
+ }
+ }
+
+ @Test
+ public void testPullOutLogValuesNull(){
+ // Open the file
+ FileInputStream fstream;
+ LogEntryObject retrunObject = ParseLog.pullOutLogValues("", "Console");
+ assertEquals(null, retrunObject);
+ }
+
+ @Test
+ public void testLogEntryObject(){
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
+ Date date = new Date();
+
+ // Open the file
+ LogEntryObject logObject = new LogEntryObject();
+ logObject.setSystem("vm02");
+ logObject.setSystemType("pap");
+ logObject.setDate(date);
+ logObject.setRemote("remote");
+
+ assertEquals("vm02", logObject.getSystem());
+ assertEquals("pap", logObject.getSystemType());
+ assertEquals(date, logObject.getDate());
+ assertEquals("remote", logObject.getRemote());
+ }
+
+ @Test
+ public void testProcess(){
+ String line = "2015-04-01 09:13:44.947 DEBUG 17482 --- [nio-8480-exec-7] c.a.l.ecomp.policy.std.StdPolicyConfig : config Retrieved ";
+
+ im = Mockito.mock(IntegrityMonitor.class);
+ try {
+ Mockito.doNothing().when(im).startTransaction();
+ } catch (StandbyStatusException | AdministrativeStateException e) {
+ fail();
+ }
+ Mockito.doNothing().when(im).endTransaction();
+ ParseLog.process(line, "pap");
+ }
+}