package org.molgenis.data.processor; import org.testng.annotations.BeforeMethod; import org.testng.annotations.Test; import java.util.Arrays; import java.util.List; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; import static org.testng.Assert.assertEquals; public class AbstractCellProcessorTest { private List<CellProcessor> processors; @BeforeMethod public void setUp() { CellProcessor headerProcessor = mock(CellProcessor.class); when(headerProcessor.processHeader()).thenReturn(true); when(headerProcessor.process("col")).thenReturn("COL"); CellProcessor dataProcessor = mock(CellProcessor.class); when(dataProcessor.processData()).thenReturn(true); when(dataProcessor.process("val")).thenReturn("VAL"); this.processors = Arrays.asList(headerProcessor, dataProcessor); } @Test public void processCell_null() { assertEquals(AbstractCellProcessor.processCell("val", false, null), "val"); } @Test public void processCell_header() { assertEquals(AbstractCellProcessor.processCell("col", true, processors), "COL"); } @Test public void processCell_data() { assertEquals(AbstractCellProcessor.processCell("val", false, processors), "VAL"); } }