/**
* Copyright 2014 SAP AG
*
* 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.
*/
package org.aim.logging;
import junit.framework.Assert;
import org.aim.logging.AIMLoggingConfig.LoggingType;
import org.junit.Test;
public class AIMLoggingTest {
@Test
public void testAIMLoggerDebugLevel() {
DummyLogWriter logWriter = new DummyLogWriter();
AIMLogger logger = new AIMLogger(logWriter, LoggingLevel.DEBUG, AIMLoggingTest.class);
Assert.assertNull(logWriter.message);
String message_1 = "hello";
logger.debug(message_1);
Assert.assertNotNull(logWriter.message);
Assert.assertTrue(logWriter.message.startsWith("DEBUG"));
Assert.assertTrue(logWriter.message.contains("AIMLoggingTest:"));
Assert.assertTrue(logWriter.message.contains(message_1));
logWriter.message = null;
String message_2 = "anotherText";
logger.info(message_2);
Assert.assertNotNull(logWriter.message);
Assert.assertTrue(logWriter.message.startsWith("INFO"));
Assert.assertTrue(logWriter.message.contains("AIMLoggingTest:"));
Assert.assertTrue(logWriter.message.contains(message_2));
Assert.assertFalse(logWriter.message.contains(message_1));
logWriter.message = null;
String message_3 = "myText";
logger.warn(message_3);
Assert.assertNotNull(logWriter.message);
Assert.assertTrue(logWriter.message.startsWith("WARN"));
Assert.assertTrue(logWriter.message.contains("AIMLoggingTest:"));
Assert.assertTrue(logWriter.message.contains(message_3));
Assert.assertFalse(logWriter.message.contains(message_2));
logWriter.message = null;
String message_4 = "ownText";
logger.error(message_4);
Assert.assertNotNull(logWriter.message);
Assert.assertTrue(logWriter.message.startsWith("ERROR"));
Assert.assertTrue(logWriter.message.contains("AIMLoggingTest:"));
Assert.assertTrue(logWriter.message.contains(message_4));
Assert.assertFalse(logWriter.message.contains(message_3));
}
@Test
public void testAIMLoggerInfoLevel() {
DummyLogWriter logWriter = new DummyLogWriter();
AIMLogger logger = new AIMLogger(logWriter, LoggingLevel.INFO, AIMLoggingTest.class);
Assert.assertNull(logWriter.message);
String message_1 = "hallo";
logger.debug(message_1);
Assert.assertNull(logWriter.message);
logWriter.message = null;
String message_2 = "anotherText";
logger.info(message_2);
Assert.assertNotNull(logWriter.message);
Assert.assertTrue(logWriter.message.startsWith("INFO"));
Assert.assertTrue(logWriter.message.contains("AIMLoggingTest:"));
Assert.assertTrue(logWriter.message.contains(message_2));
Assert.assertFalse(logWriter.message.contains(message_1));
logWriter.message = null;
String message_3 = "myText";
logger.warn(message_3);
Assert.assertNotNull(logWriter.message);
Assert.assertTrue(logWriter.message.startsWith("WARN"));
Assert.assertTrue(logWriter.message.contains("AIMLoggingTest:"));
Assert.assertTrue(logWriter.message.contains(message_3));
Assert.assertFalse(logWriter.message.contains(message_2));
logWriter.message = null;
String message_4 = "ownText";
logger.error(message_4);
Assert.assertNotNull(logWriter.message);
Assert.assertTrue(logWriter.message.startsWith("ERROR"));
Assert.assertTrue(logWriter.message.contains("AIMLoggingTest:"));
Assert.assertTrue(logWriter.message.contains(message_4));
Assert.assertFalse(logWriter.message.contains(message_3));
}
@Test
public void testAIMLoggerWarnLevel() {
DummyLogWriter logWriter = new DummyLogWriter();
AIMLogger logger = new AIMLogger(logWriter, LoggingLevel.WARN, AIMLoggingTest.class);
Assert.assertNull(logWriter.message);
String message_1 = "hallo";
logger.debug(message_1);
Assert.assertNull(logWriter.message);
logWriter.message = null;
String message_2 = "anotherText";
logger.info(message_2);
Assert.assertNull(logWriter.message);
logWriter.message = null;
String message_3 = "myText";
logger.warn(message_3);
Assert.assertNotNull(logWriter.message);
Assert.assertTrue(logWriter.message.startsWith("WARN"));
Assert.assertTrue(logWriter.message.contains("AIMLoggingTest:"));
Assert.assertTrue(logWriter.message.contains(message_3));
Assert.assertFalse(logWriter.message.contains(message_2));
logWriter.message = null;
String message_4 = "ownText";
logger.error(message_4);
Assert.assertNotNull(logWriter.message);
Assert.assertTrue(logWriter.message.startsWith("ERROR"));
Assert.assertTrue(logWriter.message.contains("AIMLoggingTest:"));
Assert.assertTrue(logWriter.message.contains(message_4));
Assert.assertFalse(logWriter.message.contains(message_3));
}
@Test
public void testAIMLoggerErrorLevel() {
DummyLogWriter logWriter = new DummyLogWriter();
AIMLogger logger = new AIMLogger(logWriter, LoggingLevel.ERROR, AIMLoggingTest.class);
Assert.assertNull(logWriter.message);
String message_1 = "hallo";
logger.debug(message_1);
Assert.assertNull(logWriter.message);
logWriter.message = null;
String message_2 = "anotherText";
logger.info(message_2);
Assert.assertNull(logWriter.message);
logWriter.message = null;
String message_3 = "myText";
logger.warn(message_3);
Assert.assertNull(logWriter.message);
logWriter.message = null;
String message_4 = "ownText";
logger.error(message_4);
Assert.assertNotNull(logWriter.message);
Assert.assertTrue(logWriter.message.startsWith("ERROR"));
Assert.assertTrue(logWriter.message.contains("AIMLoggingTest:"));
Assert.assertTrue(logWriter.message.contains(message_4));
Assert.assertFalse(logWriter.message.contains(message_3));
}
@Test
public void testAIMLoggerArguments() {
DummyLogWriter logWriter = new DummyLogWriter();
AIMLogger logger = new AIMLogger(logWriter, LoggingLevel.DEBUG, AIMLoggingTest.class);
Assert.assertNull(logWriter.message);
String message_1 = "hallo";
Integer i = 5777;
logger.debug(message_1, String.class, "ABCDEFG", i);
Assert.assertNotNull(logWriter.message);
Assert.assertTrue(logWriter.message.startsWith("DEBUG"));
Assert.assertTrue(logWriter.message.contains("AIMLoggingTest:"));
Assert.assertTrue(logWriter.message.contains(message_1));
Assert.assertFalse(logWriter.message.contains("java.lang.String"));
Assert.assertFalse(logWriter.message.contains("ABCDEFG"));
Assert.assertFalse(logWriter.message.contains("5777"));
logWriter.message = null;
String message_2 = "hello {} how {} are {} you";
logger.debug(message_2, String.class, "ABCDEFG", i);
Assert.assertNotNull(logWriter.message);
Assert.assertTrue(logWriter.message.startsWith("DEBUG"));
Assert.assertTrue(logWriter.message.contains("AIMLoggingTest:"));
Assert.assertTrue(logWriter.message.contains("hello"));
Assert.assertTrue(logWriter.message.contains("how"));
Assert.assertTrue(logWriter.message.contains("are"));
Assert.assertTrue(logWriter.message.contains("you"));
Assert.assertTrue(logWriter.message.contains("java.lang.String"));
Assert.assertTrue(logWriter.message.contains("ABCDEFG"));
Assert.assertTrue(logWriter.message.contains("5777"));
}
@Test
public void testAIMDefaultLogger() {
AIMLogger logger = AIMLoggerFactory.getLogger(AIMLoggingTest.class);
logger.info("Hello {}", 1);
logger.debug("Hello {}", 2);
logger.warn("Hello {}", 3);
logger.error("Hello {}", 4);
}
@Test
public void testAIMConcoleLogger() {
AIMLoggingConfig config = new AIMLoggingConfig();
config.setLoggingType(LoggingType.STDOUT);
config.setLoggingLevel(LoggingLevel.INFO);
AIMLoggerFactory.initialize(config);
AIMLogger logger = AIMLoggerFactory.getLogger(AIMLoggingTest.class);
logger.info("Hello {}", 1);
logger.debug("Hello {}", 2);
logger.warn("Hello {}", 3);
logger.error("Hello {}", 4);
}
}