Package com.google.common.testing
Class TestLogHandler
java.lang.Object
java.util.logging.Handler
com.google.common.testing.TestLogHandler
Tests may use this to intercept messages that are logged by the code under test. Example:
TestLogHandler handler;
protected void setUp() throws Exception {
super.setUp();
handler = new TestLogHandler();
SomeClass.logger.addHandler(handler);
addTearDown(new TearDown() {
public void tearDown() throws Exception {
SomeClass.logger.removeHandler(handler);
}
});
}
public void test() {
SomeClass.foo();
LogRecord firstRecord = handler.getStoredLogRecords().get(0);
assertEquals("some message", firstRecord.getMessage());
}
- Since:
- 10.0
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Methods inherited from class java.util.logging.Handler
getEncoding, getErrorManager, getFilter, getFormatter, getLevel, isLoggable, reportError, setEncoding, setErrorManager, setFilter, setFormatter, setLevel
-
Field Details
-
list
We will keep a private list of all logged records
-
-
Constructor Details
-
TestLogHandler
public TestLogHandler()
-
-
Method Details
-
publish
Adds the most recently logged record to our list. -
flush
public void flush() -
close
public void close() -
clear
public void clear() -
getStoredLogRecords
Returns a snapshot of the logged records.
-