| package junitparams; |
| |
| import static org.assertj.core.api.Assertions.assertThat; |
| |
| import org.junit.*; |
| import org.junit.runner.*; |
| |
| @RunWith(JUnitParamsRunner.class) |
| public class NullValuesTest { |
| |
| private Object[] expectedSingleParams = new Object[]{null, "string", Long.valueOf(1)}; |
| |
| private static int expectedSingleParamsIndex; |
| |
| private Object[] expectedMultipleParams = multipleParams(); |
| private static int expectedMultipleParamsIndex; |
| |
| @Test |
| @Parameters(method = "singleParams") |
| public void passesForSingleParametersListWithTheWorkaround(Object param) { |
| assertThat(param).isEqualTo(expectedSingleParams[expectedSingleParamsIndex]); |
| expectedSingleParamsIndex++; |
| } |
| |
| public Object[] singleParams() { |
| return new Object[]{new Object[]{null}, "string", Long.valueOf(1)}; |
| } |
| |
| @Test |
| @Parameters(method = "multipleParams") |
| public void passesForMultipleParametersOutOfBox(Object param1, Object param2, Object param3) { |
| assertThat(param1).isEqualTo(((Object[]) expectedMultipleParams[expectedMultipleParamsIndex])[0]); |
| assertThat(param2).isEqualTo(((Object[]) expectedMultipleParams[expectedMultipleParamsIndex])[1]); |
| assertThat(param3).isEqualTo(((Object[]) expectedMultipleParams[expectedMultipleParamsIndex])[2]); |
| expectedMultipleParamsIndex++; |
| } |
| |
| public Object[] multipleParams() { |
| return new Object[]{new Object[]{null, "string", null}, new Object[]{"string", Long |
| .valueOf(1), null}, new Object[]{null, null, null}}; |
| } |
| |
| } |