openrocket/test/net/sf/openrocket/logging/LoggingTest.java
2010-03-20 13:36:07 +00:00

64 lines
2.0 KiB
Java

package net.sf.openrocket.logging;
import static org.junit.Assert.*;
import java.util.List;
import org.junit.Test;
public class LoggingTest {
@Test
public void testLoggers() {
// Ensure a sane stack trace
actualTest();
}
private void actualTest() {
BufferLogger log3 = new BufferLogger(3);
BufferLogger log4 = new BufferLogger(4);
DelegatorLogger delegator = new DelegatorLogger();
delegator.addLogger(log3);
delegator.addLogger(log4);
delegator.debug("one");
delegator.debug("two");
delegator.info("three");
delegator.warn(1, "four");
delegator.error("five");
List<LogLine> logs = log4.getLogs();
assertEquals(4, logs.size());
assertTrue(logs.get(0).toString(), logs.get(0).toString().matches(
" *[0-9]+ +[0-9]+\\.[0-9]+ +DEBUG \\(LoggingTest.java:[0-9]+\\) two"));
assertTrue(logs.get(1).toString(), logs.get(1).toString().matches(
" *[0-9]+ +[0-9]+\\.[0-9]+ +INFO \\(LoggingTest.java:[0-9]+\\) three"));
assertTrue(logs.get(2).toString(), logs.get(2).toString().matches(
" *[0-9]+ +[0-9]+\\.[0-9]+ +WARN \\(LoggingTest.java:[0-9]+ LoggingTest.java:[0-9]+\\) four"));
assertTrue(logs.get(3).toString(), logs.get(3).toString().matches(
" *[0-9]+ +[0-9]+\\.[0-9]+ +ERROR \\(LoggingTest.java:[0-9]+\\) five"));
logs = log3.getLogs();
assertEquals(3, logs.size());
assertTrue(logs.get(0).toString(), logs.get(0).toString().matches(
" *[0-9]+ +[0-9]+\\.[0-9]+ +INFO \\(LoggingTest.java:[0-9]+\\) three"));
assertTrue(logs.get(1).toString(), logs.get(1).toString().matches(
" *[0-9]+ +[0-9]+\\.[0-9]+ +WARN \\(LoggingTest.java:[0-9]+ LoggingTest.java:[0-9]+\\) four"));
assertTrue(logs.get(2).toString(), logs.get(2).toString().matches(
" *[0-9]+ +[0-9]+\\.[0-9]+ +ERROR \\(LoggingTest.java:[0-9]+\\) five"));
}
public static void main(String[] args) {
PrintStreamLogger logger = new PrintStreamLogger();
logger.debug("a debug message");
logger.info("an info message");
logger.warn("a warning message");
logger.error("an error message");
logger.debug(4, "Debugging");
}
}