diff options
Diffstat (limited to 'src/test/java/org/mockito/internal/framework/DefaultMockitoFrameworkTest.java')
-rw-r--r-- | src/test/java/org/mockito/internal/framework/DefaultMockitoFrameworkTest.java | 60 |
1 files changed, 59 insertions, 1 deletions
diff --git a/src/test/java/org/mockito/internal/framework/DefaultMockitoFrameworkTest.java b/src/test/java/org/mockito/internal/framework/DefaultMockitoFrameworkTest.java index 0937b69..ae21488 100644 --- a/src/test/java/org/mockito/internal/framework/DefaultMockitoFrameworkTest.java +++ b/src/test/java/org/mockito/internal/framework/DefaultMockitoFrameworkTest.java @@ -10,15 +10,26 @@ import org.mockito.ArgumentMatchers; import org.mockito.MockSettings; import org.mockito.StateMaster; import org.mockito.exceptions.misusing.RedundantListenerException; +import org.mockito.internal.configuration.plugins.Plugins; import org.mockito.listeners.MockCreationListener; import org.mockito.listeners.MockitoListener; import org.mockito.mock.MockCreationSettings; +import org.mockito.plugins.InlineMockMaker; import org.mockitoutil.TestBase; import java.util.List; import java.util.Set; -import static org.mockito.Mockito.*; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; +import static org.junit.Assume.assumeTrue; +import static org.mockito.Mockito.any; +import static org.mockito.Mockito.eq; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.mockingDetails; +import static org.mockito.Mockito.verify; +import static org.mockito.Mockito.verifyNoMoreInteractions; +import static org.mockito.Mockito.withSettings; import static org.mockitoutil.ThrowableAssert.assertThat; public class DefaultMockitoFrameworkTest extends TestBase { @@ -112,5 +123,52 @@ public class DefaultMockitoFrameworkTest extends TestBase { "For more information, see the javadoc for RedundantListenerException class."); } + @Test + public void clearing_all_mocks_is_safe_regardless_of_mock_maker_type() { + List mock = mock(List.class); + + //expect + assertTrue(mockingDetails(mock).isMock()); + framework.clearInlineMocks(); + } + + @Test + public void clears_all_mocks() { + //clearing mocks only works with inline mocking + assumeTrue(Plugins.getMockMaker() instanceof InlineMockMaker); + + //given + List list1 = mock(List.class); + assertTrue(mockingDetails(list1).isMock()); + List list2 = mock(List.class); + assertTrue(mockingDetails(list2).isMock()); + + //when + framework.clearInlineMocks(); + + //then + assertFalse(mockingDetails(list1).isMock()); + assertFalse(mockingDetails(list2).isMock()); + } + + @Test + public void clears_mock() { + //clearing mocks only works with inline mocking + assumeTrue(Plugins.getMockMaker() instanceof InlineMockMaker); + + //given + List list1 = mock(List.class); + assertTrue(mockingDetails(list1).isMock()); + List list2 = mock(List.class); + assertTrue(mockingDetails(list2).isMock()); + + //when + framework.clearInlineMock(list1); + + //then + assertFalse(mockingDetails(list1).isMock()); + assertTrue(mockingDetails(list2).isMock()); + } + private static class MyListener implements MockitoListener {} } |