public static synchronized <T> T createStrictPartialMockForAllMethodsExcept(Class<T> type, String... methodNames) {
        if (methodNames != null && methodNames.length == 0) {
            return createStrictMock(type);
        }

        return createStrictMock(type, WhiteboxImpl.getAllMethodExcept(type, methodNames));
    }
public static synchronized < T > T createStrictPartialMockForAllMethodsExcept ( Class < T > type , String ... methodNames ) { if ( methodNames != null && methodNames . length == 0 ) { return createStrictMock ( type ) ; } return createStrictMock ( type , WhiteboxImpl . getAllMethodExcept ( type , methodNames ) ) ; }
A utility method that may be used to specify several methods that should
<i>not</i> be strictly mocked in an easy manner (by just passing in the
method names of the method you wish <i>not</i> to mock). Note that you
cannot uniquely specify a method to exclude using this method if there
are several methods with the same name in {@code type}. This method
will mock ALL methods that doesn't match the supplied name(s) regardless
of parameter types and signature. If this is not the case you should
fall-back on using the {@link #createMock(Class, Method...)} method
instead.

@param <T>         The type of the mock.
@param type        The type that'll be used to create a mock instance.
@param methodNames The names of the methods that should be mocked. If
{@code null}, then this method will have the same effect
as just calling {@link #createMock(Class, Method...)} with the
second parameter as {@code new Method[0]} (i.e. all
methods in that class will be mocked).
@return A mock object of type <T>.