@Test
public void testCheckIfArgumentsMatchParameterTypesShouldThrowIllegalArgumentExceptionIfSingleArgumentIsNotAssignableToParameterType() {

    // Given:
    Object[] arguments = new Object[] { "1" };
    Class<?>[] parameterTypes = new Class<?>[] { int.class };
    expectedException.expect(IllegalArgumentException.class);
    expectedException
            .expectMessage("Parameter number 0 is of type 'int' but argument given is '1' of type 'String'");
    // When:
    underTest.checkIfArgumentsMatchParameterTypes(arguments, parameterTypes);
    // Then: expect exception
}