/* * Copyright (c) 2007 Mockito contributors * This program is made available under the terms of the MIT License. */ package de.unioninvestment.eai.portal.junit.rules; import java.io.Serializable; import org.apache.log4j.Level; import org.apache.log4j.spi.LoggingEvent; import org.hamcrest.Description; import org.mockito.ArgumentMatcher; public class LogMessage extends ArgumentMatcher<LoggingEvent> implements Serializable { private static final long serialVersionUID = -1909837398271763801L; private final String substring; private Level level; public LogMessage(Level level, String substring) { this.level = level; this.substring = substring; } @Override public boolean matches(Object actual) { LoggingEvent event = (LoggingEvent) actual; return (actual != null) && (event.getLevel() == level) && event.getMessage().toString().contains(substring); } @Override public void describeTo(Description description) { description.appendText("logs message ").appendValue(substring) .appendText(" at level ").appendValue(level); } }