View Javadoc
1   package integrationTest.FR138;
2   
3   import com.opencsv.bean.CsvToBeanBuilder;
4   import com.opencsv.bean.HeaderColumnNameMappingStrategy;
5   import org.junit.jupiter.api.DisplayName;
6   import org.junit.jupiter.api.Test;
7   
8   import java.io.StringReader;
9   import java.util.List;
10  
11  import static org.junit.jupiter.api.Assertions.assertEquals;
12  import static org.junit.jupiter.api.Assertions.assertTrue;
13  
14  public class FR138Test {
15      @DisplayName("Parse a Bean that has the word null for a primitive value.")
16      @Test
17      public void parseBeanThatHasNullForInt() {
18          String testString = "name,num,orderNumber\n" +
19                  "kyle,123,abc123456\n" +
20                  "jimmy,null,def098765";
21  
22          HeaderColumnNameMappingStrategy<FR138MockBean> strategy = new HeaderColumnNameMappingStrategy<>();
23          strategy.setType(FR138MockBean.class);
24          List<FR138MockBean> beanList = new CsvToBeanBuilder<FR138MockBean>(new StringReader(testString))
25                  .withMappingStrategy(strategy)
26                  .build().parse(); // Extra arguments for code coverage
27  
28          assertEquals(2, beanList.size());
29          assertTrue(beanList.contains(new FR138MockBean("kyle", null, "abc123456", 123, 0.0)));
30          assertTrue(beanList.contains(new FR138MockBean("jimmy", null, "def098765", 0, 0.0)));
31      }
32  }