package org.threadly.util.debug; import static org.junit.Assert.*; import org.junit.After; import org.junit.Test; import org.threadly.util.StringUtils; @SuppressWarnings("javadoc") public class DebugLoggerTest { @After public void cleanup() { DebugLogger.getAllStoredMessages(); // should clear state } @Test public void getCurrentMessageQtyTest() { // make sure debug logger is clear DebugLogger.getAllStoredMessages(false); assertEquals(0, DebugLogger.getCurrentMessageQty()); DebugLogger.log("testMsg"); assertEquals(1, DebugLogger.getCurrentMessageQty()); } @Test public void getAllSingleTest() { String testStr = StringUtils.makeRandomString(5); DebugLogger.log(testStr); assertTrue(DebugLogger.getAllStoredMessages(false).equals(testStr)); assertEquals(0, DebugLogger.getAllStoredMessages().length()); } @Test public void getAllMultipleTest() { String testStr1 = StringUtils.makeRandomString(5); String testStr2 = StringUtils.makeRandomString(5); DebugLogger.log(testStr1); DebugLogger.log(testStr2); String result = DebugLogger.getAllStoredMessages(true); assertTrue(result.contains(testStr1)); assertTrue(result.contains(testStr2)); assertEquals(0, DebugLogger.getAllStoredMessages().length()); } @Test public void getQtySingleTest() { String testStr = StringUtils.makeRandomString(5); DebugLogger.log(testStr); assertTrue(DebugLogger.getOldestLogMessages(2).equals(testStr)); assertEquals(0, DebugLogger.getAllStoredMessages().length()); } @Test public void getQtyMultipleTest() { String testStr1 = StringUtils.makeRandomString(5); String testStr2 = StringUtils.makeRandomString(5); DebugLogger.log(testStr1); DebugLogger.log(testStr2); String result = DebugLogger.getOldestLogMessages(2, true); assertTrue(result.contains(testStr1)); assertTrue(result.contains(testStr2)); assertEquals(0, DebugLogger.getAllStoredMessages().length()); } @Test public void getQtyLimitedTest() { String testStr1 = StringUtils.makeRandomString(5); String testStr2 = StringUtils.makeRandomString(5); DebugLogger.log(testStr1); DebugLogger.log(testStr2); String result = DebugLogger.getOldestLogMessages(1, true); assertTrue(result.contains(testStr1)); assertFalse(result.contains(testStr2)); assertTrue(DebugLogger.getAllStoredMessages().length() > 0); } }