mockit.integration.logging.Slf4jMocks Maven / Gradle / Ivy
/*
* Copyright (c) 2006-2013 Rogério Liesenfeld
* This file is subject to the terms of the MIT license (see LICENSE.txt).
*/
package mockit.integration.logging;
import mockit.*;
import org.jetbrains.annotations.*;
import org.slf4j.*;
/**
* A mock class containing mocks and stubs for the SLF4j API.
*
* When a test class is annotated as {@code @UsingMocksAndStubs(Slf4jMocks.class)}, all production code touched by the
* tests in that class will receive mock {@code Logger} instances instead of real ones, when one of the factory methods
* in class {@code org.slf4j.LoggerFactory} is called.
*
* Tutorial
*/
public final class Slf4jMocks extends MockUp
{
private static final Logger MOCK_LOGGER = new MockUp(){}.getMockInstance();
private Slf4jMocks() {}
@Nullable @Mock public static ILoggerFactory getILoggerFactory() { return null; }
/**
* Returns a singleton mock {@code Logger} instance, whose methods do nothing.
*/
@NotNull @Mock public static Logger getLogger(String name) { return MOCK_LOGGER; }
/**
* Returns a singleton mock {@code Logger} instance, whose methods do nothing.
*/
@NotNull @Mock public static Logger getLogger(Class> clazz) { return MOCK_LOGGER; }
}