Best Mockito code snippet using org.mockito.invocation.InvocationFactory
Source:TypeProxyCreationTest.java  
...34    public TestRule mockitoRule = new MockitoRule(this);35    @Mock36    private Implementation.Target implementationTarget;37    @Mock38    private TypeProxy.InvocationFactory invocationFactory;39    @Mock40    private MethodAccessorFactory methodAccessorFactory;41    @Mock42    private Implementation.SpecialMethodInvocation specialMethodInvocation;43    @Mock44    private MethodDescription.InDefinedShape proxyMethod;45    private TypeDescription foo;46    private MethodList<?> fooMethods;47    private int modifiers;48    @Test49    public void testAllIllegal() throws Exception {50        Mockito.when(implementationTarget.getInstrumentedType()).thenReturn(foo);51        Mockito.when(invocationFactory.invoke(ArgumentMatchers.eq(implementationTarget), ArgumentMatchers.eq(foo), ArgumentMatchers.any(MethodDescription.class))).thenReturn(specialMethodInvocation);52        TypeDescription dynamicType = new TypeProxy(foo, implementationTarget, invocationFactory, true, false).make(TypeProxyCreationTest.BAR, ClassFileVersion.ofThisVm(), methodAccessorFactory).getTypeDescription();53        MatcherAssert.assertThat(dynamicType.getModifiers(), CoreMatchers.is(modifiers));54        MatcherAssert.assertThat(dynamicType.getSuperClass().asErasure(), CoreMatchers.is(foo));55        MatcherAssert.assertThat(dynamicType.getInterfaces(), CoreMatchers.is(((TypeList.Generic) (new TypeList.Generic.Empty()))));56        MatcherAssert.assertThat(dynamicType.getName(), CoreMatchers.is(TypeProxyCreationTest.BAR));57        MatcherAssert.assertThat(dynamicType.getDeclaredMethods().size(), CoreMatchers.is(2));58        MatcherAssert.assertThat(dynamicType.isAssignableTo(Serializable.class), CoreMatchers.is(false));59        Mockito.verifyZeroInteractions(methodAccessorFactory);60        for (MethodDescription methodDescription : fooMethods) {61            Mockito.verify(invocationFactory).invoke(implementationTarget, foo, methodDescription);62        }63        Mockito.verifyNoMoreInteractions(invocationFactory);64        Mockito.verify(specialMethodInvocation, Mockito.times(fooMethods.size())).isValid();65        Mockito.verifyNoMoreInteractions(specialMethodInvocation);66    }67    @Test68    public void testAllLegal() throws Exception {69        Mockito.when(implementationTarget.getInstrumentedType()).thenReturn(foo);70        Mockito.when(invocationFactory.invoke(ArgumentMatchers.eq(implementationTarget), ArgumentMatchers.eq(foo), ArgumentMatchers.any(MethodDescription.class))).thenReturn(specialMethodInvocation);71        Mockito.when(specialMethodInvocation.isValid()).thenReturn(true);72        Mockito.when(specialMethodInvocation.apply(ArgumentMatchers.any(MethodVisitor.class), ArgumentMatchers.any(Implementation.Context.class))).thenReturn(new StackManipulation.Size(0, 0));73        Mockito.when(methodAccessorFactory.registerAccessorFor(specialMethodInvocation, DEFAULT)).thenReturn(proxyMethod);74        TypeDescription dynamicType = new TypeProxy(foo, implementationTarget, invocationFactory, true, false).make(TypeProxyCreationTest.BAR, ClassFileVersion.ofThisVm(), methodAccessorFactory).getTypeDescription();75        MatcherAssert.assertThat(dynamicType.getModifiers(), CoreMatchers.is(modifiers));76        MatcherAssert.assertThat(dynamicType.getSuperClass().asErasure(), CoreMatchers.is(foo));77        MatcherAssert.assertThat(dynamicType.getInterfaces(), CoreMatchers.is(((TypeList.Generic) (new TypeList.Generic.Empty()))));78        MatcherAssert.assertThat(dynamicType.getName(), CoreMatchers.is(TypeProxyCreationTest.BAR));79        MatcherAssert.assertThat(dynamicType.getDeclaredMethods().size(), CoreMatchers.is(2));80        MatcherAssert.assertThat(dynamicType.isAssignableTo(Serializable.class), CoreMatchers.is(false));81        Mockito.verify(methodAccessorFactory, Mockito.times(fooMethods.size())).registerAccessorFor(specialMethodInvocation, DEFAULT);82        for (MethodDescription methodDescription : fooMethods) {83            Mockito.verify(invocationFactory).invoke(implementationTarget, foo, methodDescription);84        }85        Mockito.verifyNoMoreInteractions(invocationFactory);86        Mockito.verify(specialMethodInvocation, Mockito.times(fooMethods.size())).isValid();87        Mockito.verifyNoMoreInteractions(specialMethodInvocation);88    }89    @Test90    public void testAllLegalSerializable() throws Exception {91        Mockito.when(implementationTarget.getInstrumentedType()).thenReturn(foo);92        Mockito.when(invocationFactory.invoke(ArgumentMatchers.eq(implementationTarget), ArgumentMatchers.eq(foo), ArgumentMatchers.any(MethodDescription.class))).thenReturn(specialMethodInvocation);93        Mockito.when(specialMethodInvocation.isValid()).thenReturn(true);94        Mockito.when(specialMethodInvocation.apply(ArgumentMatchers.any(MethodVisitor.class), ArgumentMatchers.any(Implementation.Context.class))).thenReturn(new StackManipulation.Size(0, 0));95        Mockito.when(methodAccessorFactory.registerAccessorFor(specialMethodInvocation, DEFAULT)).thenReturn(proxyMethod);96        TypeDescription dynamicType = new TypeProxy(foo, implementationTarget, invocationFactory, true, true).make(TypeProxyCreationTest.BAR, ClassFileVersion.ofThisVm(), methodAccessorFactory).getTypeDescription();97        MatcherAssert.assertThat(dynamicType.getModifiers(), CoreMatchers.is(modifiers));98        MatcherAssert.assertThat(dynamicType.getSuperClass().asErasure(), CoreMatchers.is(foo));99        MatcherAssert.assertThat(dynamicType.getInterfaces(), CoreMatchers.is(((TypeList.Generic) (new TypeList.Generic.ForLoadedTypes(Serializable.class)))));100        MatcherAssert.assertThat(dynamicType.getName(), CoreMatchers.is(TypeProxyCreationTest.BAR));101        MatcherAssert.assertThat(dynamicType.getDeclaredMethods().size(), CoreMatchers.is(2));102        MatcherAssert.assertThat(dynamicType.isAssignableTo(Serializable.class), CoreMatchers.is(true));103        Mockito.verify(methodAccessorFactory, Mockito.times(fooMethods.size())).registerAccessorFor(specialMethodInvocation, DEFAULT);104        for (MethodDescription methodDescription : fooMethods) {105            Mockito.verify(invocationFactory).invoke(implementationTarget, foo, methodDescription);106        }107        Mockito.verifyNoMoreInteractions(invocationFactory);108        Mockito.verify(specialMethodInvocation, Mockito.times(fooMethods.size())).isValid();109        Mockito.verifyNoMoreInteractions(specialMethodInvocation);110    }111    @Test112    public void testAllLegalNotIgnoreFinalizer() throws Exception {113        Mockito.when(implementationTarget.getInstrumentedType()).thenReturn(foo);114        Mockito.when(invocationFactory.invoke(ArgumentMatchers.eq(implementationTarget), ArgumentMatchers.eq(foo), ArgumentMatchers.any(MethodDescription.class))).thenReturn(specialMethodInvocation);115        Mockito.when(specialMethodInvocation.isValid()).thenReturn(true);116        Mockito.when(specialMethodInvocation.apply(ArgumentMatchers.any(MethodVisitor.class), ArgumentMatchers.any(Implementation.Context.class))).thenReturn(new StackManipulation.Size(0, 0));117        Mockito.when(methodAccessorFactory.registerAccessorFor(specialMethodInvocation, DEFAULT)).thenReturn(proxyMethod);118        TypeDescription dynamicType = new TypeProxy(foo, implementationTarget, invocationFactory, false, false).make(TypeProxyCreationTest.BAR, ClassFileVersion.ofThisVm(), methodAccessorFactory).getTypeDescription();119        MatcherAssert.assertThat(dynamicType.getModifiers(), CoreMatchers.is(modifiers));120        MatcherAssert.assertThat(dynamicType.getSuperClass().asErasure(), CoreMatchers.is(foo));121        MatcherAssert.assertThat(dynamicType.getInterfaces(), CoreMatchers.is(((TypeList.Generic) (new TypeList.Generic.Empty()))));122        MatcherAssert.assertThat(dynamicType.getName(), CoreMatchers.is(TypeProxyCreationTest.BAR));123        MatcherAssert.assertThat(dynamicType.getDeclaredMethods().size(), CoreMatchers.is(2));124        MatcherAssert.assertThat(dynamicType.isAssignableTo(Serializable.class), CoreMatchers.is(false));125        Mockito.verify(methodAccessorFactory, Mockito.times(((fooMethods.size()) + 1))).registerAccessorFor(specialMethodInvocation, DEFAULT);126        for (MethodDescription methodDescription : fooMethods) {127            Mockito.verify(invocationFactory).invoke(implementationTarget, foo, methodDescription);128        }129        Mockito.verify(invocationFactory).invoke(implementationTarget, foo, new MethodDescription.ForLoadedMethod(Object.class.getDeclaredMethod("finalize")));130        Mockito.verifyNoMoreInteractions(invocationFactory);131        Mockito.verify(specialMethodInvocation, Mockito.times(((fooMethods.size()) + 1))).isValid();132        Mockito.verifyNoMoreInteractions(specialMethodInvocation);133    }134    @Test135    public void testForConstructorConstruction() throws Exception {136        Mockito.when(implementationTarget.getInstrumentedType()).thenReturn(foo);137        Mockito.when(invocationFactory.invoke(ArgumentMatchers.eq(implementationTarget), ArgumentMatchers.eq(foo), ArgumentMatchers.any(MethodDescription.class))).thenReturn(specialMethodInvocation);138        Mockito.when(specialMethodInvocation.isValid()).thenReturn(true);139        Mockito.when(specialMethodInvocation.apply(ArgumentMatchers.any(MethodVisitor.class), ArgumentMatchers.any(Implementation.Context.class))).thenReturn(new StackManipulation.Size(0, 0));140        Mockito.when(methodAccessorFactory.registerAccessorFor(specialMethodInvocation, DEFAULT)).thenReturn(proxyMethod);141        StackManipulation stackManipulation = new TypeProxy.ForSuperMethodByConstructor(foo, implementationTarget, Collections.singletonList(((TypeDescription) (of(Void.class)))), true, false);142        MethodVisitor methodVisitor = Mockito.mock(MethodVisitor.class);143        Implementation.Context implementationContext = Mockito.mock(Implementation.Context.class);144        Mockito.when(implementationContext.register(ArgumentMatchers.any(AuxiliaryType.class))).thenReturn(foo);145        MatcherAssert.assertThat(stackManipulation.isValid(), CoreMatchers.is(true));146        StackManipulation.Size size = stackManipulation.apply(methodVisitor, implementationContext);147        MatcherAssert.assertThat(size.getSizeImpact(), CoreMatchers.is(1));148        MatcherAssert.assertThat(size.getMaximalSize(), CoreMatchers.is(3));149        Mockito.verify(implementationContext).register(ArgumentMatchers.any(AuxiliaryType.class));150        Mockito.verifyNoMoreInteractions(implementationContext);151        Mockito.verify(methodVisitor).visitTypeInsn(Opcodes.NEW, Type.getInternalName(TypeProxyCreationTest.Foo.class));152        Mockito.verify(methodVisitor, Mockito.times(2)).visitInsn(Opcodes.DUP);153        Mockito.verify(methodVisitor).visitInsn(Opcodes.ACONST_NULL);154        Mockito.verify(methodVisitor).visitMethodInsn(Opcodes.INVOKESPECIAL, foo.getInternalName(), MethodDescription.CONSTRUCTOR_INTERNAL_NAME, foo.getDeclaredMethods().filter(ElementMatchers.isConstructor()).getOnly().getDescriptor(), false);155        Mockito.verify(methodVisitor).visitFieldInsn(Opcodes.PUTFIELD, foo.getInternalName(), TypeProxy.INSTANCE_FIELD, Type.getDescriptor(Void.class));156        Mockito.verify(methodVisitor).visitVarInsn(Opcodes.ALOAD, 0);157        Mockito.verifyNoMoreInteractions(methodVisitor);158    }159    @Test160    public void testForDefaultMethodConstruction() throws Exception {161        Mockito.when(implementationTarget.getInstrumentedType()).thenReturn(foo);162        Mockito.when(invocationFactory.invoke(ArgumentMatchers.eq(implementationTarget), ArgumentMatchers.eq(foo), ArgumentMatchers.any(MethodDescription.class))).thenReturn(specialMethodInvocation);163        Mockito.when(specialMethodInvocation.isValid()).thenReturn(true);164        Mockito.when(specialMethodInvocation.apply(ArgumentMatchers.any(MethodVisitor.class), ArgumentMatchers.any(Implementation.Context.class))).thenReturn(new StackManipulation.Size(0, 0));165        Mockito.when(methodAccessorFactory.registerAccessorFor(specialMethodInvocation, DEFAULT)).thenReturn(proxyMethod);166        StackManipulation stackManipulation = new TypeProxy.ForDefaultMethod(foo, implementationTarget, false);167        MethodVisitor methodVisitor = Mockito.mock(MethodVisitor.class);168        Implementation.Context implementationContext = Mockito.mock(Implementation.Context.class);169        Mockito.when(implementationContext.register(ArgumentMatchers.any(AuxiliaryType.class))).thenReturn(foo);170        MatcherAssert.assertThat(stackManipulation.isValid(), CoreMatchers.is(true));171        StackManipulation.Size size = stackManipulation.apply(methodVisitor, implementationContext);172        MatcherAssert.assertThat(size.getSizeImpact(), CoreMatchers.is(0));173        MatcherAssert.assertThat(size.getMaximalSize(), CoreMatchers.is(2));174        Mockito.verify(implementationContext).register(ArgumentMatchers.any(AuxiliaryType.class));175        Mockito.verifyNoMoreInteractions(implementationContext);176        Mockito.verify(methodVisitor).visitTypeInsn(Opcodes.NEW, Type.getInternalName(TypeProxyCreationTest.Foo.class));177        Mockito.verify(methodVisitor, Mockito.times(2)).visitInsn(Opcodes.DUP);178        Mockito.verify(methodVisitor).visitMethodInsn(Opcodes.INVOKESPECIAL, foo.getInternalName(), MethodDescription.CONSTRUCTOR_INTERNAL_NAME, foo.getDeclaredMethods().filter(ElementMatchers.isConstructor()).getOnly().getDescriptor(), false);179        Mockito.verify(methodVisitor).visitFieldInsn(Opcodes.PUTFIELD, foo.getInternalName(), TypeProxy.INSTANCE_FIELD, Type.getDescriptor(Void.class));180        Mockito.verify(methodVisitor).visitVarInsn(Opcodes.ALOAD, 0);181        Mockito.verifyNoMoreInteractions(methodVisitor);182    }183    @Test184    public void testForReflectionFactoryConstruction() throws Exception {185        Mockito.when(implementationTarget.getInstrumentedType()).thenReturn(foo);186        Mockito.when(invocationFactory.invoke(ArgumentMatchers.eq(implementationTarget), ArgumentMatchers.eq(foo), ArgumentMatchers.any(MethodDescription.class))).thenReturn(specialMethodInvocation);187        Mockito.when(specialMethodInvocation.isValid()).thenReturn(true);188        Mockito.when(specialMethodInvocation.apply(ArgumentMatchers.any(MethodVisitor.class), ArgumentMatchers.any(Implementation.Context.class))).thenReturn(new StackManipulation.Size(0, 0));189        Mockito.when(methodAccessorFactory.registerAccessorFor(specialMethodInvocation, DEFAULT)).thenReturn(proxyMethod);190        StackManipulation stackManipulation = new TypeProxy.ForSuperMethodByReflectionFactory(foo, implementationTarget, true, false);191        MethodVisitor methodVisitor = Mockito.mock(MethodVisitor.class);192        Implementation.Context implementationContext = Mockito.mock(Implementation.Context.class);193        Mockito.when(implementationContext.register(ArgumentMatchers.any(AuxiliaryType.class))).thenReturn(of(TypeProxyCreationTest.FooProxyMake.class));194        MatcherAssert.assertThat(stackManipulation.isValid(), CoreMatchers.is(true));195        StackManipulation.Size size = stackManipulation.apply(methodVisitor, implementationContext);196        MatcherAssert.assertThat(size.getSizeImpact(), CoreMatchers.is(1));197        MatcherAssert.assertThat(size.getMaximalSize(), CoreMatchers.is(3));198        Mockito.verify(implementationContext).register(ArgumentMatchers.any(AuxiliaryType.class));199        Mockito.verifyNoMoreInteractions(implementationContext);200        Mockito.verify(methodVisitor).visitMethodInsn(Opcodes.INVOKESTATIC, Type.getInternalName(TypeProxyCreationTest.FooProxyMake.class), TypeProxy.REFLECTION_METHOD, Type.getMethodDescriptor(TypeProxyCreationTest.FooProxyMake.class.getDeclaredMethod("make")), false);201        Mockito.verify(methodVisitor).visitInsn(Opcodes.DUP);202        Mockito.verify(methodVisitor).visitFieldInsn(Opcodes.PUTFIELD, Type.getInternalName(TypeProxyCreationTest.FooProxyMake.class), TypeProxy.INSTANCE_FIELD, Type.getDescriptor(Void.class));203        Mockito.verify(methodVisitor).visitVarInsn(Opcodes.ALOAD, 0);204        Mockito.verifyNoMoreInteractions(methodVisitor);205    }206    @Test207    public void testImplementationIsValid() throws Exception {208        MatcherAssert.assertThat(INSTANCE.isValid(), CoreMatchers.is(true));209    }210    @Test211    @SuppressWarnings("unchecked")212    public void testAccessorIsValid() throws Exception {213        TypeProxy typeProxy = new TypeProxy(Mockito.mock(TypeDescription.class), Mockito.mock(Implementation.Target.class), Mockito.mock(TypeProxy.InvocationFactory.class), false, false);214        TypeProxy.MethodCall methodCall = typeProxy.new MethodCall(Mockito.mock(MethodAccessorFactory.class));215        TypeDescription instrumentedType = Mockito.mock(TypeDescription.class);216        FieldList<FieldDescription.InDefinedShape> fieldList = Mockito.mock(FieldList.class);217        Mockito.when(fieldList.filter(ArgumentMatchers.any(ElementMatcher.class))).thenReturn(fieldList);218        Mockito.when(fieldList.getOnly()).thenReturn(Mockito.mock(FieldDescription.InDefinedShape.class));219        Mockito.when(instrumentedType.getDeclaredFields()).thenReturn(fieldList);220        TypeProxy.MethodCall.Appender appender = methodCall.new Appender(instrumentedType);221        Implementation.SpecialMethodInvocation specialMethodInvocation = Mockito.mock(Implementation.SpecialMethodInvocation.class);222        Mockito.when(specialMethodInvocation.isValid()).thenReturn(true);223        StackManipulation stackManipulation = appender.new AccessorMethodInvocation(Mockito.mock(MethodDescription.class), specialMethodInvocation);224        MatcherAssert.assertThat(stackManipulation.isValid(), CoreMatchers.is(true));225        Mockito.verify(specialMethodInvocation).isValid();226        Mockito.verifyNoMoreInteractions(specialMethodInvocation);227    }...Source:BridgeClientImplTest.java  
...28@ExtendWith(MockitoExtension.class)29public class BridgeClientImplTest {30    private static final RESTRequest REST_REQUEST = RESTRequest.getBuilder().build();31    @Mock32    private InvocationFactoryImpl invocationFactory;33    @Mock34    private ResponseReaderImpl responseReader;35    @Mock36    private Response response;37    @Mock(lenient = true)38    private Invocation invocation;39    @Mock40    private WebTarget webTarget;41    @InjectMocks42    private BridgeClientImpl bridgeClient;43    @BeforeEach44    public void setup() {45        given(invocation.invoke()).willReturn(response);46    }...Source:MockHandlerAdaptor.java  
...30 * The class provides a access to method and data of  {@link org.mockito.invocation.MockHandler} from the given mock instance.31 */32public class MockHandlerAdaptor<T> {33    private final T mock;34    private final InvocationFactory invocationFactory;35    private final MockingDetails mockingDetails;36    37    MockHandlerAdaptor(final T mock) {38        this.mock = mock;39        this.invocationFactory = new InvocationFactory();40        this.mockingDetails = Mockito.mockingDetails(mock);41    }42    43    public Object getMock() {44        return mock;45    }46    47    public MockCreationSettings<?> getMockSettings() {48        return mockingDetails.getMockCreationSettings();49    }50    51    private MockHandler getMockHandler() {52        return mockingDetails.getMockHandler();53    }...Source:InvocationFactoryTest.java  
...8import static org.mockito.Mockito.spy;9import static org.mockito.Mockito.withSettings;10import org.junit.Test;11import org.mockito.invocation.Invocation;12import org.mockito.invocation.InvocationFactory;13import org.mockitoutil.TestBase;14public class InvocationFactoryTest extends TestBase {15    static class TestClass {16        public String testMethod() throws Throwable {17            return "un-mocked";18        }19    }20    final TestClass mock = spy(TestClass.class);21    @Test22    public void call_method_that_throws_a_throwable() throws Throwable {23        Invocation invocation =24                Mockito.framework()25                        .getInvocationFactory()26                        .createInvocation(27                                mock,28                                withSettings().build(TestClass.class),29                                TestClass.class.getDeclaredMethod("testMethod"),30                                new InvocationFactory.RealMethodBehavior() {31                                    @Override32                                    public Object call() throws Throwable {33                                        throw new Throwable("mocked");34                                    }35                                });36        try {37            Mockito.mockingDetails(mock).getMockHandler().handle(invocation);38        } catch (Throwable t) {39            assertEquals("mocked", t.getMessage());40            return;41        }42        fail();43    }44    @Test45    public void call_method_that_returns_a_string() throws Throwable {46        Invocation invocation =47                Mockito.framework()48                        .getInvocationFactory()49                        .createInvocation(50                                mock,51                                withSettings().build(TestClass.class),52                                TestClass.class.getDeclaredMethod("testMethod"),53                                new InvocationFactory.RealMethodBehavior() {54                                    @Override55                                    public Object call() throws Throwable {56                                        return "mocked";57                                    }58                                });59        Object ret = Mockito.mockingDetails(mock).getMockHandler().handle(invocation);60        assertEquals("mocked", ret);61    }62}...Source:DefaultInvocationFactory.java  
...6import org.mockito.internal.invocation.RealMethod;7import org.mockito.internal.invocation.mockref.MockWeakReference;8import org.mockito.internal.progress.SequenceNumber;9import org.mockito.invocation.Invocation;10import org.mockito.invocation.InvocationFactory;11import org.mockito.invocation.Location;12import org.mockito.mock.MockCreationSettings;13public class DefaultInvocationFactory implements InvocationFactory {14    public Invocation createInvocation(Object obj, MockCreationSettings mockCreationSettings, Method method, Callable callable, Object... objArr) {15        return createInvocation(obj, mockCreationSettings, method, (RealMethod) new RealMethod.FromCallable(callable), objArr);16    }17    public Invocation createInvocation(Object obj, MockCreationSettings mockCreationSettings, Method method, InvocationFactory.RealMethodBehavior realMethodBehavior, Object... objArr) {18        return createInvocation(obj, mockCreationSettings, method, (RealMethod) new RealMethod.FromBehavior(realMethodBehavior), objArr);19    }20    private Invocation createInvocation(Object obj, MockCreationSettings mockCreationSettings, Method method, RealMethod realMethod, Object[] objArr) {21        return createInvocation(obj, method, objArr, realMethod, mockCreationSettings);22    }23    public static InterceptedInvocation createInvocation(Object obj, Method method, Object[] objArr, RealMethod realMethod, MockCreationSettings mockCreationSettings, Location location) {24        return new InterceptedInvocation(new MockWeakReference(obj), createMockitoMethod(method, mockCreationSettings), objArr, realMethod, location, SequenceNumber.next());25    }26    private static InterceptedInvocation createInvocation(Object obj, Method method, Object[] objArr, RealMethod realMethod, MockCreationSettings mockCreationSettings) {27        return createInvocation(obj, method, objArr, realMethod, mockCreationSettings, new LocationImpl());28    }29    private static MockitoMethod createMockitoMethod(Method method, MockCreationSettings mockCreationSettings) {30        if (mockCreationSettings.isSerializable()) {31            return new SerializableMethod(method);...Source:RealMethod.java  
...3 * This program is made available under the terms of the MIT License.4 */5package org.mockito.internal.invocation;6import org.mockito.internal.exceptions.stacktrace.ConditionalStackTraceFilter;7import org.mockito.invocation.InvocationFactory;8import org.mockito.invocation.InvocationOnMock;9import java.io.Serializable;10import java.util.concurrent.Callable;11/**12 * Interface that wraps a 'real' method of the mock object.13 * Needed for test spies or {@link InvocationOnMock#callRealMethod()}.14 */15public interface RealMethod extends Serializable {16    enum IsIllegal implements RealMethod {17        INSTANCE;18        @Override19        public boolean isInvokable() {20            return false;21        }22        @Override23        public Object invoke() {24            throw new IllegalStateException();25        }26    }27    class FromCallable extends FromBehavior implements RealMethod {28        public FromCallable(final Callable<?> callable) {29            super(new InvocationFactory.RealMethodBehavior() {30                @Override31                public Object call() throws Throwable {32                    return callable.call();33                }34            });35        }36    }37    class FromBehavior implements RealMethod {38        private final InvocationFactory.RealMethodBehavior<?> behavior;39        FromBehavior(InvocationFactory.RealMethodBehavior<?> behavior) {40            this.behavior = behavior;41        }42        @Override43        public boolean isInvokable() {44            return true;45        }46        @Override47        public Object invoke() throws Throwable {48            try {49                return behavior.call();50            } catch (Throwable t) {51                new ConditionalStackTraceFilter().filter(t);52                throw t;53            }...InvocationFactory
Using AI Code Generation
1import org.mockito.invocation.Invocation;2import org.mockito.invocation.InvocationFactory;3import org.mockito.invocation.InvocationOnMock;4import org.mockito.invocation.MockHandler;5import org.mockito.invocation.MockHandlerFactory;6import org.mockito.invocation.StubInfo;7import org.mockito.invocation.Stubbing;8import org.mockito.invocation.StubbingLookup;9import org.mockito.invocation.StubbingLookupAnswer;10import org.mockito.invocation.StubbingLookupMatcher;11import org.mockito.invocation.StubbingLookupMatcherAnswer;12import org.mockito.invocation.StubbingLookupMatcherAnswerBuilder;13import org.mockito.invocation.StubbingLookupMatcherBuilder;14import org.mockito.invocation.StubbiInvocationFactory
Using AI Code Generation
1import org.mockito.invocation.Invocation;2import org.mockito.invocation.InvocationFactory;3import org.mockito.invocation.InvocationOnMock;4import org.mockito.invocation.MockHandler;5import org.mockito.invocation.MockHandlerFactory;6import org.mockito.invocation.MockSettings;7import org.mockito.invocation.MockitoMethod;8import org.mockito.invocation.MockitoMethodProxy;9import org.mockito.inInvocationFactory
Using AI Code Generation
1package org.mockito.invocation;2import org.mockito.invocation.Invocation;3import org.mockito.invocation.InvocationFactory;4import org.mockito.invocation.InvocationMatcher;5import org.mockito.invocation.InvocationOnMock;6import org.mockito.invocation.Location;7import org.mockito.invocation.MockHandler;8import org.mockito.invocation.StubInfo;9import org.mockito.invocation.Stubbing;10import org.mockito.invocation.MockHandler;11public class InvocationFactoryClass {12    public static void main(String[] args) {13        InvocationFactory invocationFactory = new InvocationFactory();14        Invocation invocation = invocationFactory.createInvocation(null, null, null, null, null, null, null);15        InvocationMatcher invocationMatcher = invocationFactory.createInvocationMatcher(null, null, null, null, null);16        InvocationOnMock invocationOnMock = invocationFactory.createInvocationOnMock(null, null, null, null, null, null, null);17        Location location = invocationFactory.createLocation(null, null);18        MockHandler mockHandler = invocationFactory.createMockHandler(null);19        StubInfo stubInfo = invocationFactory.createStubInfo(null, null);20        Stubbing stubbing = invocationFactory.createStubbing(null, null, null);21    }22}InvocationFactory
Using AI Code Generation
1import org.mockito.invocation.InvocationFactory;2import org.mockito.invocation.Invocation;3import org.mockito.invocation.MockHandler;4import org.mockito.invocation.MethodInvocation;5import org.mockito.invocation.InvocationOnMock;6import org.mockito.invocation.MockHandlerFactory;7import org.mockito.invocation.Location;8import org.mockito.invocation.InvocationMatcher;9import org.mockito.invocation.InvocationsFinder;10import org.mockito.invocation.MockitoMethod;11import org.mockito.invocation.InvocationContainer;12import org.mockito.invocation.InvocationContainerImpl;13import org.mockito.invocation.MockHandlerImpl;14import org.mockito.invocation.MockitoInvocationHandler;15import org.mockito.invocation.SerializableMethod;16import org.mockito.invocation.MockHandlerFactoryImpl;17import org.mockito.invocation.MockitoMethodProxy;InvocationFactory
Using AI Code Generation
1import org.mockito.invocation.InvocationFactory;2import org.mockito.invocation.Invocation;3import org.mockito.invocation.InvocationBuilder;4import org.mockito.invocation.Location;5import org.mockito.invocation.MockHandler;6import org.mockito.invocation.MockHandlerFactory;7import org.mockito.invocation.MockAwareInvocationHandler;8import org.mockito.invocation.InvocationMarker;9import org.mockito.invocation.InvocationOnMock;10import org.mockito.invocation.SerializableInvocation;11import org.mockito.invocation.InvocationContainer;12import org.mockito.invocation.MockHandlerFactory;13import org.mockito.invocation.InvocationFactory;14import org.mockito.invocation.Invocation;15import org.mockito.invocation.InvocationBuilder;16import org.mockito.invocation.Location;17import org.mockito.invocation.MockHandler;18import org.mockito.invocation.MockHandlerFactory;19import org.mockito.invocation.MockAwareInvocationHandler;20import org.mockito.invocation.InvocationMarker;21import org.mockito.invocation.InvocationOnMock;22import org.mockito.invocation.SerializableInvocation;23import org.mockito.invocation.InvocationContainer;24import org.mockito.invocation.MockHandlerFactory;25import org.mockito.invocation.InvocationFactory;26import org.mockito.invocation.Invocation;27import org.mockito.invocation.InvocationBuilder;28import org.mockito.invocation.Location;29import org.mockito.invocation.MockHandler;30import org.mockito.invocation.MockHandlerFactory;31import org.mockito.invocation.MockAwareInvocationHandler;32import org.mockito.invocation.InvocationMarker;33import org.mockito.invocation.InvocationOnMock;34import org.mockito.invocation.SerializableInvocation;35import org.mockito.invocation.InvocationContainer;36import org.mockito.invocation.MockHandlerFactory;37import org.mockito.invocation.InvocationFactory;38import org.mockito.invocation.Invocation;39import org.mockito.invocation.InvocationBuilder;40import org.mockito.invocation.Location;41import org.mockito.invocation.MockHandler;42import org.mockito.invocation.MockHandlerFactory;43import org.mockito.invocation.MockAwareInvocationHandler;44import org.mockito.invocation.InvocationMarker;45import org.mockito.invocation.InvocationOnMock;46import org.mockito.invocation.SerializableInvocation;47import org.mockito.invocation.InvocationContainer;48import org.mockito.invocation.MockHandlerFactory;49import org.mockito.invocation.InvocationFactory;50import org.mockito.invocation.Invocation;51import org.mockito.invocation.InvocationBuilder;52import org.mockito.invocation.Location;53import org.mockito.invocation.MockHandler;54import org.mockito.invocation.MockHandlerFactory;55import org.mockito.invocation.MockAwareInvocationHandler;56import org.mockito.invocation.InvocationMarker;57import org.mockito.invocation.InvocationOnMockInvocationFactory
Using AI Code Generation
1import org.mockito.invocation.InvocationFactory;2import org.mockito.invocation.Invocation;3import org.mockito.invocation.InvocationBuilder;4import org.mockito.invocation.Location;5import org.mockito.invocation.MockHandler;6import org.mockito.invocation.MockHandlerFactory;7import org.mockito.invocation.StubInfo;8import org.mockito.invocation.Stubber;9import org.mockito.invocation.Stubbing;10import org.mockito.invocation.StubbingLookup;11import org.mockito.invocation.StubbingLookupResult;12import org.mockito.invocation.StubbingLookupResultBuilder;13import org.mockito.invocation.StubbingLookupResultBuilderImpl;14import org.mockito.invocation.StubbingLookupResultImpl;InvocationFactory
Using AI Code Generation
1import org.mockito.invocation.InvocationFactory;2import org.mockito.invocation.InvocationBuilder;3import org.mockito.invocation.Invocation;4import org.mockito.invocation.MethodInvocation;5import org.mockito.invocation.Location;6import org.mockito.invocation.DescribedInvocation;7import org.mockito.invocation.InvocationMatcher;8import org.mockito.invocation.InvocationContainer;9import org.mockito.invocation.InvocationChunk;10import org.mockito.invocation.MockAwareInvocation;11import org.mockito.invocation.StubAwareInvocation;12import org.mockito.invocation.StubInfo;13import org.mockito.invocation.StubInfoImpl;14import org.mockito.invocation.StubInfoBuilder;15import org.mockito.invocation.StubInfoImplBuilder;16import org.mockito.invocation.StubbedInvocationMatcher;17import org.mockito.invocation.StubbedInvocationMatcherImpl;18import org.mockito.invocation.StubbedInvocationMatcherImplBuilder;19import org.mockito.invocation.StubbedInvocationMatcherImplBuilderImpl;20import org.mockito.invocation.ArgumentMatcherStorage;21import org.mockito.invocation.ArgumentMatcherStorageImpl;22import org.mockito.invocation.ArgumentMatcherStorageImplBuilder;23import org.mockito.invocation.ArgumentMatcherStorageImplBuilderImpl;24import org.mockito.invocation.InvocationMatcherImpl;25import org.mockito.invocation.InvocationContainerImpl;26import org.mockito.invocation.InvocationChunkImpl;27import org.mockito.invocation.MockAwareInvocationImpl;28import org.mockito.invocation.StubAwareInvocationImpl;29import org.mockito.invocation.InvocationMatcherImplBuilder;30import org.mockito.invocation.InvocationContainerImplBuilder;31import org.mockito.invocation.InvocationChunkImplBuilder;32import org.mockito.invocation.MockAwareInvocationImplBuilder;33import org.mockito.invocation.StubAwareInvocationImplBuilder;34import org.mockito.invocation.InvocationMatcherImplBuilderImpl;35import org.mockito.invocation.InvocationContainerImplBuilderImpl;36import org.mockito.invocation.InvocationChunkImplBuilderImpl;37import org.mockito.invocation.MockAwareInvocationImplBuilderImpl;38import org.mockito.invocation.StubAwareInvocationImplBuilderImpl;39import org.mockito.invocation.InvocationFactoryImpl;40import org.mockito.invocation.InvocationFactoryImplBuilder;41import org.mockito.invocation.InvocationFactoryImplBuilderImpl;42import org.mockito.invocation.InvocationBuilderImpl;43import org.mockito.invocation.InvocationBuilderImplBuilder;44import org.mockito.invocation.InvocationImpl;45import org.mockito.invocation.MethodInvocationImpl;46import org.mockito.invocation.LocationImpl;47import org.mockito.invocation.DescribedInvocationImpl;48import org.mockito.invocation.InvocationImplBuilder;49import orgInvocationFactory
Using AI Code Generation
1package org.mockito.invocation;2import org.mockito.invocation.InvocationFactory;3import org.mockito.invocation.Invocation;4import org.mockito.invocation.InvocationOnMock;5import org.mockito.invocation.MockHandler;6import org.mockito.invocation.Location;7public class InvocationFactoryExample {8    public static void main(String[] args) {9        InvocationFactory invocationFactory = new InvocationFactory();10        Invocation invocation = invocationFactory.createInvocation("mock", "method", new Object[] { "arg" }, 1, new Location("class", "file", 1));11        System.out.println(invocation);12    }13}14Invocation on mock: method(<arg>) 1. class at file:115package org.mockito.invocation;16import org.mockito.invocation.InvocationHandler;17import org.mockito.invocation.Invocation;18import org.mockito.invocation.InvocationOnMock;19import org.mockito.invocation.MockHandler;20import org.mockito.invocation.Location;21public class InvocationHandlerExample {22    public static void main(String[] args) {23        InvocationHandler invocationHandler = new InvocationHandler() {24            public Object handle(InvocationOnMock invocation) throws Throwable {25                return null;26            }27        };28        System.out.println(invocationHandler);29    }30}31package org.mockito.invocation;32import org.mockito.invocation.InvocationMatcher;33import org.mockito.invocation.Invocation;34import org.mockito.invocation.InvocationOnMock;35import org.mockito.invocation.MockHandler;36import org.mockito.invocation.Location;37public class InvocationMatcherExample {38    public static void main(String[] args) {39        InvocationMatcher invocationMatcher = new InvocationMatcher();40        System.out.println(invocationMatcher);41    }42}43package org.mockito.invocation;44import org.mockito.invocation.InvocationOnMock;45import org.mockito.invocation.Invocation;46import org.mockito.invocation.MockHandler;47import org.mockito.invocation.Location;48public class InvocationOnMockExample {49    public static void main(String[] args) {50        InvocationOnMock invocationOnMock = new InvocationOnMock() {51            public Object getMock()InvocationFactory
Using AI Code Generation
1package org.mockito.invocation;2import org.mockito.invocation.InvocationFactory;3import org.mockito.invocation.Invocation;4import org.mockito.invocation.MethodInvocationReport;5import org.mockito.invocation.InvocationMatcher;6import org.mockito.invocation.Location;7import org.mockito.invocation.SerializableMethod;8import org.mockito.invocation.InvocationBuilder;9import org.mockito.invocation.InvocationOnMock;10import org.mockito.invocation.MockHandler;11import org.mockito.invocation.StubInfo;12import org.mockito.invocation.StubbedInvocationMatcher;13import org.mockito.invocation.StubbedInvocationMatcher;14import org.mockito.invocation.InvocationContainer;15import org.mockito.invocation.InvocationContainerImpl;16import org.mockito.invocation.MockAwareInvocationHandler;17import org.mockito.invocation.MockHandlerFactory;18import org.mockito.invocation.MockHandlerFactoryImpl;19import org.mockito.invocation.DefaultInvocation;20import org.mockito.invocation.DefaultInvocationBuilder;21import org.mockito.invocation.DefaultInvocationFactory;22import org.mockito.invocation.DefaultInvocationMatcher;23import org.mockito.invocation.DefaultInvocationOnMock;24import org.mockito.invocation.DefaultLocation;25import org.mockito.invocation.DefaultMockHandler;26import org.mockito.invocation.DefaultMockHandlerFactory;27import org.mockito.invocation.DefaultStubInfo;28import org.mockito.invocation.DefaultStubbedInvocationMatcher;29import org.mockito.invocation.DefaultStubber;30import org.mockito.invocation.InvocationMatcher;31import org.mockito.invocation.InvocationOnMock;32import org.mockito.invocation.InvocationStubber;33import org.mockito.invocation.MockHandler;34import org.mockito.invocation.MockHandlerFactory;35import org.mockito.invocation.MockHandlerInterface;36import org.mockito.invocation.StubInfo;37import org.mockito.invocation.StubbedInvocationMatcher;38import org.mockito.invocation.Stubber;39import org.mockito.invocation.Verifiable;40import org.mockito.invocation.Verifier;41import org.mockito.invocation.VerifierFactory;42import org.mockito.invocation.VerifierFactoryImpl;43import org.mockito.invocation.VerifierImpl;44import org.moLearn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!
