summaryrefslogtreecommitdiff
path: root/src/test/java/org/mockito/internal/framework/DefaultMockitoFrameworkTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/java/org/mockito/internal/framework/DefaultMockitoFrameworkTest.java')
-rw-r--r--src/test/java/org/mockito/internal/framework/DefaultMockitoFrameworkTest.java60
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 {}
}