1 /* 2 * Copyright (c) 2007 Mockito contributors 3 * This program is made available under the terms of the MIT License. 4 */ 5 6 package org.mockito; 7 8 import static org.assertj.core.api.Assertions.assertThat; 9 import static org.mockito.Mockito.times; 10 import static org.mockito.internal.progress.ThreadSafeMockingProgress.mockingProgress; 11 12 import java.util.List; 13 import org.junit.Test; 14 import org.mockito.exceptions.misusing.NotAMockException; 15 import org.mockito.internal.creation.MockSettingsImpl; 16 17 @SuppressWarnings("unchecked") 18 public class MockitoTest { 19 20 @Test shouldRemoveStubbableFromProgressAfterStubbing()21 public void shouldRemoveStubbableFromProgressAfterStubbing() { 22 List mock = Mockito.mock(List.class); 23 Mockito.when(mock.add("test")).thenReturn(true); 24 //TODO Consider to move to separate test 25 assertThat(mockingProgress().pullOngoingStubbing()).isNull(); 26 } 27 28 @SuppressWarnings({"CheckReturnValue", "MockitoUsage"}) 29 @Test(expected=NotAMockException.class) shouldValidateMockWhenVerifying()30 public void shouldValidateMockWhenVerifying() { 31 Mockito.verify("notMock"); 32 } 33 34 @SuppressWarnings({"CheckReturnValue", "MockitoUsage"}) 35 @Test(expected=NotAMockException.class) shouldValidateMockWhenVerifyingWithExpectedNumberOfInvocations()36 public void shouldValidateMockWhenVerifyingWithExpectedNumberOfInvocations() { 37 Mockito.verify("notMock", times(19)); 38 } 39 40 @Test(expected=NotAMockException.class) shouldValidateMockWhenVerifyingNoMoreInteractions()41 public void shouldValidateMockWhenVerifyingNoMoreInteractions() { 42 Mockito.verifyNoMoreInteractions("notMock"); 43 } 44 45 @Test(expected=NotAMockException.class) shouldValidateMockWhenVerifyingZeroInteractions()46 public void shouldValidateMockWhenVerifyingZeroInteractions() { 47 Mockito.verifyZeroInteractions("notMock"); 48 } 49 50 @SuppressWarnings({"CheckReturnValue", "MockitoUsage"}) 51 @Test(expected=NotAMockException.class) shouldValidateMockWhenCreatingInOrderObject()52 public void shouldValidateMockWhenCreatingInOrderObject() { 53 Mockito.inOrder("notMock"); 54 } 55 56 @Test shouldStartingMockSettingsContainDefaultBehavior()57 public void shouldStartingMockSettingsContainDefaultBehavior() { 58 //when 59 MockSettingsImpl<?> settings = (MockSettingsImpl<?>) Mockito.withSettings(); 60 61 //then 62 assertThat(Mockito.RETURNS_DEFAULTS).isEqualTo(settings.getDefaultAnswer()); 63 } 64 65 } 66