private boolean isMatchingInvocation( @Nullable Object mock, @Nonnull String mockClassDesc, @Nonnull String mockNameAndDesc, boolean constructorInvocation, @Nonnull Expectation expectation) { ExpectedInvocation invocation = expectation.invocation; return invocation.isMatch(mockClassDesc, mockNameAndDesc) && isSameMockedClass(mock, invocation.instance) && (constructorInvocation || mock == null || isMatchingInstance(mock, expectation)); }