| package junitparams; |
| |
| import junitparams.internal.parameters.ParametersReader; |
| import org.junit.Test; |
| import org.junit.runner.JUnitCore; |
| import org.junit.runner.Result; |
| import org.junit.runner.RunWith; |
| import org.junit.runner.notification.Failure; |
| |
| import static org.junit.Assert.assertEquals; |
| |
| import static java.lang.String.format; |
| |
| public class MultipleParameterProvidersTest { |
| |
| @RunWith(JUnitParamsRunner.class) |
| private class CantInitializeWithValueAndMethodProvider { |
| private Object[] extraProvider() { |
| return new Object[][]{ |
| {"test", "test"}, |
| }; |
| } |
| |
| @Parameters(value = {"test, test"}, method = "extraProvider") |
| @Test |
| public void testWithValueAndMethodProviders(String input, String output) { |
| assertEquals(input, output); |
| } |
| } |
| |
| @Test |
| public void testWithValueAndMethodProvidersThrowsIllegalStateException() { |
| Result testResult = JUnitCore.runClasses(CantInitializeWithValueAndMethodProvider.class); |
| assertEquals(1, testResult.getFailureCount()); |
| |
| Failure testFailure = testResult.getFailures().iterator().next(); |
| assertEquals(IllegalStateException.class, testFailure.getException().getClass()); |
| assertEquals(format(ParametersReader.ILLEGAL_STATE_EXCEPTION_MESSAGE, "testWithValueAndMethodProviders"), |
| testFailure.getMessage()); |
| } |
| } |