com.atlassian.jira.junit.rules
Class MockComponentContainer
java.lang.Object
org.junit.rules.TestWatcher
com.atlassian.jira.junit.rules.MockComponentContainer
- All Implemented Interfaces:
- org.junit.rules.TestRule
public class MockComponentContainer
- extends org.junit.rules.TestWatcher
JUnit @Rule that allows for providing mcok JIRA components accessed in production code via
ComponentAccessor
static methods.
Example usage (in your test classes):
@Rule public MockComponentContainer container = new MockComponentContainer();
@Before
public void addMocks()
{
container.addMock(ServiceOne.class, mockServiceOne).addMock(ServiceTwo.class, mockServiceTwo);
}
@Test
public void testCodeThatUsesComponentAccessor()
{
assertSame(mockServiceOne, ComponentAccessor.getComponent(ServiceOne.class));
// etc.
}
- Since:
- 5.1
Method Summary |
|
addMock(Class<I> componentInterface,
C mockComponentImplementation)
|
|
addMockComponent(Class<I> componentInterface,
C mockComponentImplementation)
|
protected void |
finished(org.junit.runner.Description description)
|
protected void |
starting(org.junit.runner.Description description)
|
Methods inherited from class org.junit.rules.TestWatcher |
apply, failed, succeeded |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
MockComponentContainer
public MockComponentContainer()
addMockComponent
public <I,C extends I> MockComponentContainer addMockComponent(Class<I> componentInterface,
C mockComponentImplementation)
addMock
public <I,C extends I> MockComponentContainer addMock(Class<I> componentInterface,
C mockComponentImplementation)
starting
protected void starting(org.junit.runner.Description description)
- Overrides:
starting
in class org.junit.rules.TestWatcher
finished
protected void finished(org.junit.runner.Description description)
- Overrides:
finished
in class org.junit.rules.TestWatcher
Copyright © 2002-2012 Atlassian. All Rights Reserved.