Как сделать JUnit assert для сообщения в логгере
У меня есть тестовый код, который вызывает регистратор Java, чтобы сообщить о своем состоянии. В тестовом коде JUnit я хотел бы убедиться, что в этом логгере была сделана правильная запись в журнале. Что-то вроде следующего:
methodUnderTest(bool x){
if(x)
logger.info("x happened")
}
@Test tester(){
// perhaps setup a logger first.
methodUnderTest(true);
assertXXXXXX(loggedLevel(),Level.INFO);
}
Я полагаю, что это можно сделать с помощью специально адаптированного средства ведения журнала (или обработчика, или средства форматирования), но я бы предпочел повторно использовать решение, которое уже существует. (И, если честно, мне не ясно, как получить logRecord от регистратора, но предположим, что это 'возможно.) Я