public class MockitoContainer extends Object implements org.junit.rules.TestRule
MockComponentContainer
. This will take care of initializing mocks using
Mockito and also putting them in a mock component container so that they're available via
ComponentAccessor.getComponent(Class)
. After the test has run, the mock
container will be tear down so that next test does not accidentally access stale state.
Usage:
@Rule public MockitoContainer mockitoContainer = MockitoMocksInContainer.rule(this); @Mock @AvailableInContainer private UserService mockUserService; @Mock private JiraAuthenticationContext jiraAuthenticationContext;where the userService will be available via
ComponentAccessor
, but the
jiraAuthenticationContext will just be instantiated as a Mockito mock
Gives also ability to access initialized MockComponentWorker
which allows to manipulate mocks directly from tests
Example:
@Rule public MockitoContainer mockitoContainer = MockitoMocksInContainer.rule(this); @Mock public void testSomething(){ mockitoContainer.getMockWorker().setMockUserKeyStore().useDefaultMapping(false); (...) }
Constructor and Description |
---|
MockitoContainer(Object test) |
Modifier and Type | Method and Description |
---|---|
org.junit.runners.model.Statement |
apply(org.junit.runners.model.Statement base,
org.junit.runner.Description description) |
org.junit.rules.RuleChain |
getInnerChain() |
MockComponentContainer |
getMockComponentContainer() |
MockComponentWorker |
getMockWorker()
A shorthand for getMockComponentContainer().getMockWorker()
|
public MockitoContainer(Object test)
public org.junit.runners.model.Statement apply(org.junit.runners.model.Statement base, org.junit.runner.Description description)
apply
in interface org.junit.rules.TestRule
public MockComponentContainer getMockComponentContainer()
public MockComponentWorker getMockWorker()
public org.junit.rules.RuleChain getInnerChain()
Copyright © 2002-2015 Atlassian. All Rights Reserved.