Home | History | Annotate | Download | only in junitparams
      1 package junitparams;
      2 
      3 import static org.assertj.core.api.Assertions.assertThat;
      4 
      5 import org.junit.*;
      6 import org.junit.runner.*;
      7 
      8 @RunWith(JUnitParamsRunner.class)
      9 public class NullValuesTest {
     10 
     11     private Object[] expectedSingleParams = new Object[]{null, "string", Long.valueOf(1)};
     12 
     13     private static int expectedSingleParamsIndex;
     14 
     15     private Object[] expectedMultipleParams = multipleParams();
     16     private static int expectedMultipleParamsIndex;
     17 
     18     @Test
     19     @Parameters(method = "singleParams")
     20     public void passesForSingleParametersListWithTheWorkaround(Object param) {
     21         assertThat(param).isEqualTo(expectedSingleParams[expectedSingleParamsIndex]);
     22         expectedSingleParamsIndex++;
     23     }
     24 
     25     public Object[] singleParams() {
     26         return new Object[]{new Object[]{null}, "string", Long.valueOf(1)};
     27     }
     28 
     29     @Test
     30     @Parameters(method = "multipleParams")
     31     public void passesForMultipleParametersOutOfBox(Object param1, Object param2, Object param3) {
     32         assertThat(param1).isEqualTo(((Object[]) expectedMultipleParams[expectedMultipleParamsIndex])[0]);
     33         assertThat(param2).isEqualTo(((Object[]) expectedMultipleParams[expectedMultipleParamsIndex])[1]);
     34         assertThat(param3).isEqualTo(((Object[]) expectedMultipleParams[expectedMultipleParamsIndex])[2]);
     35         expectedMultipleParamsIndex++;
     36     }
     37 
     38     public Object[] multipleParams() {
     39         return new Object[]{new Object[]{null, "string", null}, new Object[]{"string", Long
     40                 .valueOf(1), null}, new Object[]{null, null, null}};
     41     }
     42 
     43 }
     44