package net.rrm.ehour.ui.report.detailed; import net.rrm.ehour.report.criteria.ReportCriteria; import net.rrm.ehour.report.service.DetailedReportService; import net.rrm.ehour.ui.common.BaseSpringWebAppTester; import net.rrm.ehour.ui.common.wicket.Model; import org.junit.Before; import org.junit.Test; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import java.io.ByteArrayOutputStream; import static org.junit.Assert.assertTrue; import static org.mockito.Mockito.when; public class DetailedReportExcelTest extends BaseSpringWebAppTester { @Mock private DetailedReportService detailedReportService; @Before public void set_up() { MockitoAnnotations.initMocks(this); getMockContext().putBean("detailedReportService", detailedReportService); } @Test public void should_generate() throws Exception { ReportCriteria criteria = DetailedReportDataObjectMother.getReportCriteria(); when(detailedReportService.getDetailedReportData(criteria)).thenReturn(DetailedReportDataObjectMother.getFlatReportData()); ByteArrayOutputStream stream = new ByteArrayOutputStream(); new DetailedReportExcel(new Model<ReportCriteria>(criteria)).write(stream); byte[] excelData = stream.toByteArray(); assertTrue(excelData.length > 0); } }