diff options
author | Jon Bratseth <bratseth@yahoo-inc.com> | 2016-06-15 23:09:44 +0200 |
---|---|---|
committer | Jon Bratseth <bratseth@yahoo-inc.com> | 2016-06-15 23:09:44 +0200 |
commit | 72231250ed81e10d66bfe70701e64fa5fe50f712 (patch) | |
tree | 2728bba1131a6f6e5bdf95afec7d7ff9358dac50 /vespalog/src/test/java/com/yahoo/log/LogLevelTestCase.java |
Publish
Diffstat (limited to 'vespalog/src/test/java/com/yahoo/log/LogLevelTestCase.java')
-rw-r--r-- | vespalog/src/test/java/com/yahoo/log/LogLevelTestCase.java | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/vespalog/src/test/java/com/yahoo/log/LogLevelTestCase.java b/vespalog/src/test/java/com/yahoo/log/LogLevelTestCase.java new file mode 100644 index 00000000000..cef2acd99da --- /dev/null +++ b/vespalog/src/test/java/com/yahoo/log/LogLevelTestCase.java @@ -0,0 +1,78 @@ +// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +package com.yahoo.log; + +import java.util.Set; +import java.util.HashSet; +import java.util.logging.Level; + +import org.junit.Test; + +import static org.junit.Assert.*; + +/** + * Testcases for LogLevel + * + * @author <a href="mailto:borud@yahoo-inc.com">Bjorn Borud</a> + */ +public class LogLevelTestCase { + + /** + * Ensure that all the log levels we need are present + * and that they are distinct. + */ + @Test + public void testLogLevels () { + assertNotNull(LogLevel.UNKNOWN); + assertNotNull(LogLevel.FATAL); + assertNotNull(LogLevel.ERROR); + assertNotNull(LogLevel.WARNING); + assertNotNull(LogLevel.INFO); + assertNotNull(LogLevel.CONFIG); + assertNotNull(LogLevel.EVENT); + assertNotNull(LogLevel.DEBUG); + assertNotNull(LogLevel.SPAM); + + // use a set to verify that all are distinct + Set<Level> seen = new HashSet<Level>(); + assertTrue(seen.add(LogLevel.UNKNOWN)); + assertTrue(seen.add(LogLevel.FATAL)); + assertTrue(seen.add(LogLevel.ERROR)); + assertTrue(seen.add(LogLevel.WARNING)); + assertTrue(seen.add(LogLevel.INFO)); + assertTrue(seen.add(LogLevel.CONFIG)); + assertTrue(seen.add(LogLevel.EVENT)); + assertTrue(seen.add(LogLevel.DEBUG)); + assertTrue(seen.add(LogLevel.SPAM)); + + // verify that set would trigger error (not necessary) + assertTrue(! seen.add(LogLevel.SPAM)); + } + + /** + * Test that given the log level name we are able to + * map it to the correct static instance. + */ + @Test + public void testNameToLevelMapping () { + assertEquals(LogLevel.UNKNOWN, LogLevel.parse("unknown")); + assertEquals(LogLevel.FATAL, LogLevel.parse("fatal")); + assertEquals(LogLevel.ERROR, LogLevel.parse("error")); + assertEquals(LogLevel.WARNING, LogLevel.parse("warning")); + assertEquals(LogLevel.INFO, LogLevel.parse("info")); + assertEquals(LogLevel.CONFIG, LogLevel.parse("config")); + assertEquals(LogLevel.EVENT, LogLevel.parse("event")); + assertEquals(LogLevel.DEBUG, LogLevel.parse("debug")); + assertEquals(LogLevel.SPAM, LogLevel.parse("spam")); + } + + @Test + public void testJavaToLevelMapping () { + assertTrue(LogLevel.ERROR == LogLevel.getVespaLogLevel(Level.SEVERE)); + assertTrue(LogLevel.WARNING == LogLevel.getVespaLogLevel(Level.WARNING)); + assertTrue(LogLevel.INFO == LogLevel.getVespaLogLevel(Level.INFO)); + assertTrue(LogLevel.CONFIG == LogLevel.getVespaLogLevel(Level.CONFIG)); + assertTrue(LogLevel.DEBUG == LogLevel.getVespaLogLevel(Level.FINE)); + assertTrue(LogLevel.DEBUG == LogLevel.getVespaLogLevel(Level.FINER)); + assertTrue(LogLevel.SPAM == LogLevel.getVespaLogLevel(Level.FINEST)); + } +} |