From f51a3e2b128f0b96bc9ed67dfc3081f4b41d1303 Mon Sep 17 00:00:00 2001 From: "Kishore Reddy, Gujja (kg811t)" Date: Fri, 8 Jun 2018 16:40:16 -0400 Subject: Junit Test Cases & Raptors Issue-ID: PORTAL-273. PORTAL-301 Covered JUNITS for sdk modules and RAPTOR reports fixes Change-Id: Ifaf3bf06f0ec123051a791cc8e7f10662f97a525 Signed-off-by: Kishore Reddy, Gujja (kg811t) --- .../analytics/xmlobj/PdfReportHandlerTest.java | 2164 +++++++++++++++++++- 1 file changed, 2122 insertions(+), 42 deletions(-) (limited to 'ecomp-sdk/epsdk-analytics/src/test/java/org/onap/portalsdk/analytics/xmlobj/PdfReportHandlerTest.java') diff --git a/ecomp-sdk/epsdk-analytics/src/test/java/org/onap/portalsdk/analytics/xmlobj/PdfReportHandlerTest.java b/ecomp-sdk/epsdk-analytics/src/test/java/org/onap/portalsdk/analytics/xmlobj/PdfReportHandlerTest.java index c94dd41a..76dd83ed 100644 --- a/ecomp-sdk/epsdk-analytics/src/test/java/org/onap/portalsdk/analytics/xmlobj/PdfReportHandlerTest.java +++ b/ecomp-sdk/epsdk-analytics/src/test/java/org/onap/portalsdk/analytics/xmlobj/PdfReportHandlerTest.java @@ -51,6 +51,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.TreeMap; +import java.util.Vector; import javax.servlet.ServletContext; import javax.servlet.http.HttpServletRequest; @@ -60,11 +61,12 @@ import org.junit.Before; import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; -import org.mockito.InjectMocks; import org.mockito.Matchers; +import org.mockito.Mock; import org.mockito.Mockito; import org.mockito.MockitoAnnotations; import org.onap.portalsdk.analytics.model.DataCache; +import org.onap.portalsdk.analytics.model.ReportHandler; import org.onap.portalsdk.analytics.model.ReportLoader; import org.onap.portalsdk.analytics.model.base.ReportWrapper; import org.onap.portalsdk.analytics.model.definition.ReportDefinition; @@ -83,6 +85,8 @@ import org.onap.portalsdk.analytics.util.XSSFilter; import org.onap.portalsdk.analytics.view.ColumnHeader; import org.onap.portalsdk.analytics.view.ColumnHeaderRow; import org.onap.portalsdk.analytics.view.DataRow; +import org.onap.portalsdk.analytics.view.DataValue; +import org.onap.portalsdk.analytics.view.HtmlFormatter; import org.onap.portalsdk.analytics.view.ReportColumnHeaderRows; import org.onap.portalsdk.analytics.view.ReportData; import org.onap.portalsdk.analytics.view.ReportDataRows; @@ -99,33 +103,38 @@ import org.powermock.modules.junit4.PowerMockRunner; import com.lowagie.text.Document; import com.lowagie.text.Image; +import com.lowagie.text.Rectangle; @RunWith(PowerMockRunner.class) -@PrepareForTest({ PdfReportHandler.class, PdfReportHandlerTest.class, AppConstants.class, Globals.class, AppUtils.class, ReportWrapper.class, DataCache.class, - DbUtils.class, DataSet.class, Font.class, ReportLoader.class, ReportRuntime.class, Utils.class, ESAPI.class, Codec.class, - SecurityCodecUtil.class, ConnectionUtils.class, XSSFilter.class, ReportDefinition.class, UserUtils.class}) +@PrepareForTest({ PdfReportHandler.class, PdfReportHandlerTest.class, AppConstants.class, Globals.class, AppUtils.class, + ReportWrapper.class, DataCache.class, DbUtils.class, DataSet.class, Font.class, ReportLoader.class, + ReportRuntime.class, Utils.class, ESAPI.class, Codec.class, SecurityCodecUtil.class, ConnectionUtils.class, + XSSFilter.class, ReportDefinition.class, UserUtils.class, Color.class }) public class PdfReportHandlerTest { - @InjectMocks - PdfReportHandler pdfReportHandler; - + PdfReportHandler pdfReportHandler = new PdfReportHandler(); + @Mock + ReportHandler reportHandler; + @Mock + ReportDefinition rdef; + @Before - public void init() throws Exception { + public void init() throws Exception { PowerMockito.mockStatic(Globals.class); PowerMockito.mockStatic(AppUtils.class); - PowerMockito.mockStatic(DbUtils.class); + PowerMockito.mockStatic(DbUtils.class); MockitoAnnotations.initMocks(this); } - + MockitoTestSuite mockitoTestSuite = new MockitoTestSuite(); HttpServletRequest mockedRequest = mockitoTestSuite.getMockedRequest(); HttpServletResponse mockedResponse = mockitoTestSuite.getMockedResponse(); - - @Ignore + + @Ignore @SuppressWarnings({ "rawtypes", "unchecked" }) @Test public void createPdfFileContentTest() throws Exception { - Document doc = mock(Document.class); + Document doc = mock(Document.class); PowerMockito.whenNew(Document.class).withNoArguments().thenReturn(doc); PowerMockito.when(doc.newPage()).thenReturn(true); when(AppUtils.getUserID(mockedRequest)).thenReturn("test"); @@ -160,7 +169,7 @@ public class PdfReportHandlerTest { when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_DISPLAYTYPE_MAP)).thenReturn(values3); pdfReportHandler.createPdfFileContent(mockedRequest, mockedResponse, 3); } - + @Ignore @SuppressWarnings({ "rawtypes", "unchecked" }) @Test @@ -173,8 +182,8 @@ public class PdfReportHandlerTest { ReportRuntime rr = mock(ReportRuntime.class); ReportData rd = mock(ReportData.class); - ReportDataRows rdr = new ReportDataRows(); - CustomReportType crType = mock(CustomReportType.class); + ReportDataRows rdr = new ReportDataRows(); + CustomReportType crType = mock(CustomReportType.class); Connection conn = mock(Connection.class); Statement st = mock(Statement.class); ResultSet resSet = mock(ResultSet.class); @@ -222,12 +231,12 @@ public class PdfReportHandlerTest { list.add(dataSourceType); dataSourceList.dataSource = list; when(crType.getDataSourceList()).thenReturn(dataSourceList); - + when(ConnectionUtils.getConnection(Matchers.anyString())).thenReturn(conn); when(conn.createStatement()).thenReturn(st); - when( st.executeQuery(Matchers.anyString())).thenReturn(resSet); + when(st.executeQuery(Matchers.anyString())).thenReturn(resSet); when(resSet.getMetaData()).thenReturn(resSetMD); - + when(mockedRequest.getParameter("parent")).thenReturn("parent_test"); when(mockedRequest.getSession().getAttribute("parent_test_rr")).thenReturn(rr); when(mockedRequest.getSession().getAttribute("parent_test_rd")).thenReturn(rd); @@ -242,7 +251,7 @@ public class PdfReportHandlerTest { columnHeaderRow.add(columnHeader); reportColumnHeaderRows.add(columnHeaderRow); rd.reportColumnHeaderRows = reportColumnHeaderRows; - + ReportRowHeaderCols reportRowHeaderCols = new ReportRowHeaderCols(); RowHeaderCol rowHeaderCol = new RowHeaderCol(); RowHeader rowHeader = new RowHeader(); @@ -258,14 +267,13 @@ public class PdfReportHandlerTest { when(mockedRequest.getParameter(AppConstants.RI_ACTION)).thenReturn("report.edit"); when(mockedRequest.getParameter(AppConstants.RI_WIZARD_ACTION)).thenReturn("test"); - when(mockedRequest.getSession().getAttribute( - AppConstants.SI_REPORT_RUNTIME)).thenReturn(rr); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_REPORT_RUNTIME)).thenReturn(rr); Mockito.when(Globals.getNewScheduleData()).thenReturn("test"); DataSet datset = PowerMockito.mock(DataSet.class); when(DbUtils.executeQuery(Matchers.anyString())).thenReturn(datset); when(datset.getString(Matchers.anyInt(), Matchers.anyInt())).thenReturn(null); - - Document doc = mock(Document.class); + + Document doc = mock(Document.class); PowerMockito.whenNew(Document.class).withNoArguments().thenReturn(doc); PowerMockito.when(doc.newPage()).thenReturn(true); when(AppUtils.getUserID(mockedRequest)).thenReturn("test"); @@ -297,7 +305,7 @@ public class PdfReportHandlerTest { when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_DISPLAYTYPE_MAP)).thenReturn(values3); pdfReportHandler.createPdfFileContent(mockedRequest, mockedResponse, 3); } - + @Ignore @SuppressWarnings({ "rawtypes", "unchecked" }) @Test @@ -313,8 +321,8 @@ public class PdfReportHandlerTest { when(htmlStr.stripHtml(Matchers.anyString())).thenReturn("test"); ReportRuntime rr = mock(ReportRuntime.class); ReportData rd = mock(ReportData.class); - ReportDataRows rdr = new ReportDataRows(); - CustomReportType crType = mock(CustomReportType.class); + ReportDataRows rdr = new ReportDataRows(); + CustomReportType crType = mock(CustomReportType.class); Connection conn = mock(Connection.class); Statement st = mock(Statement.class); ResultSet resSet = mock(ResultSet.class); @@ -362,12 +370,12 @@ public class PdfReportHandlerTest { list.add(dataSourceType); dataSourceList.dataSource = list; when(crType.getDataSourceList()).thenReturn(dataSourceList); - + when(ConnectionUtils.getConnection(Matchers.anyString())).thenReturn(conn); when(conn.createStatement()).thenReturn(st); - when( st.executeQuery(Matchers.anyString())).thenReturn(resSet); + when(st.executeQuery(Matchers.anyString())).thenReturn(resSet); when(resSet.getMetaData()).thenReturn(resSetMD); - + when(mockedRequest.getParameter("parent")).thenReturn("parent_test"); when(mockedRequest.getSession().getAttribute("parent_test_rr")).thenReturn(rr); when(mockedRequest.getSession().getAttribute("parent_test_rd")).thenReturn(rd); @@ -382,20 +390,19 @@ public class PdfReportHandlerTest { columnHeaderRow.add(columnHeader); reportColumnHeaderRows.add(columnHeaderRow); rd.reportColumnHeaderRows = reportColumnHeaderRows; - + ReportRowHeaderCols reportRowHeaderCols = new ReportRowHeaderCols(); rd.reportRowHeaderCols = reportRowHeaderCols; when(mockedRequest.getParameter(AppConstants.RI_ACTION)).thenReturn("report.edit"); when(mockedRequest.getParameter(AppConstants.RI_WIZARD_ACTION)).thenReturn("test"); - when(mockedRequest.getSession().getAttribute( - AppConstants.SI_REPORT_RUNTIME)).thenReturn(rr); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_REPORT_RUNTIME)).thenReturn(rr); Mockito.when(Globals.getNewScheduleData()).thenReturn("test"); DataSet datset = PowerMockito.mock(DataSet.class); when(DbUtils.executeQuery(Matchers.anyString())).thenReturn(datset); when(datset.getString(Matchers.anyInt(), Matchers.anyInt())).thenReturn(null); - - Document doc = mock(Document.class); + + Document doc = mock(Document.class); PowerMockito.whenNew(Document.class).withNoArguments().thenReturn(doc); PowerMockito.when(doc.newPage()).thenReturn(true); when(AppUtils.getUserID(mockedRequest)).thenReturn("test"); @@ -427,13 +434,13 @@ public class PdfReportHandlerTest { when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_DISPLAYTYPE_MAP)).thenReturn(values3); pdfReportHandler.createPdfFileContent(mockedRequest, mockedResponse, 2); } - + @SuppressWarnings({ "rawtypes", "unchecked", "static-access" }) @Test public void createPdfFileContent2Test() throws Exception { PowerMockito.mockStatic(Image.class); - Document doc = mock(Document.class); - CustomReportType crType = mock(CustomReportType.class); + Document doc = mock(Document.class); + CustomReportType crType = mock(CustomReportType.class); DataSet ds = mock(DataSet.class); PowerMockito.whenNew(Document.class).withNoArguments().thenReturn(doc); @@ -472,13 +479,13 @@ public class PdfReportHandlerTest { when(AppUtils.getRequestNvlValue(mockedRequest, "totalOnChart")).thenReturn("Y"); List chartGroups = new ArrayList<>(); when(rr.getAllChartGroups()).thenReturn(chartGroups); - ReportParamValues reportValues= new ReportParamValues(); + ReportParamValues reportValues = new ReportParamValues(); when(rr.getReportParamValues()).thenReturn(reportValues); when(rr.getFormFieldFilled(rr.getChartLeftAxisLabel())).thenReturn("test"); when(rr.getFormFieldFilled(rr.getChartRightAxisLabel())).thenReturn("test"); HashMap requestParams = new HashMap<>(); requestParams.put("", "test"); - + DataSourceList dataSourceList = new DataSourceList(); List list = new ArrayList<>(); @@ -515,7 +522,7 @@ public class PdfReportHandlerTest { list.add(dataSourceType); dataSourceList.dataSource = list; when(crType.getDataSourceList()).thenReturn(dataSourceList); - + when(Globals.getRequestParamtersMap(mockedRequest, false)).thenReturn(requestParams); ds.set(0, "test"); when(mockedRequest.getSession().getAttribute(AppConstants.RI_CHART_DATA)).thenReturn(ds); @@ -531,5 +538,2078 @@ public class PdfReportHandlerTest { when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_DISPLAYTYPE_MAP)).thenReturn(values3); pdfReportHandler.createPdfFileContent(mockedRequest, mockedResponse, 3); } - + + @Test + public void createPdfFileContent_case5Test() throws Exception { + PowerMockito.mockStatic(Image.class); + Document doc = mock(Document.class); + CustomReportType crType = mock(CustomReportType.class); + + DataSet ds = mock(DataSet.class); + PowerMockito.whenNew(Document.class).withNoArguments().thenReturn(doc); + PowerMockito.when(doc.newPage()).thenReturn(true); + when(AppUtils.getUserID(mockedRequest)).thenReturn("test"); + ReportRuntime rr = mock(ReportRuntime.class); + ReportData rd = mock(ReportData.class); + + ReportDataRows reportDataRows = new ReportDataRows(); + DataRow dataRow1 = new DataRow(); + DataRow dataRow = new DataRow(); + DataValue value = new DataValue(); + DataValue value1 = new DataValue(); + dataRow1.addDataValue(value); + dataRow1.addDataValue(value1); + reportDataRows.addDataRow(dataRow1); + reportDataRows.add(dataRow1); + reportDataRows.addDataRow(dataRow); + reportDataRows.add(dataRow); + rd.reportDataRows = reportDataRows; + + ReportColumnHeaderRows reportColumnHeaderRows = new ReportColumnHeaderRows(); + ColumnHeaderRow columnHeaderRow = new ColumnHeaderRow(); + ColumnHeader columnHeader = new ColumnHeader(); + columnHeaderRow.add(columnHeader); + ColumnHeader columnHeader1 = new ColumnHeader(); + columnHeader1.setRowSpan(1); + columnHeaderRow.add(columnHeader1); + reportColumnHeaderRows.add(columnHeaderRow); + rd.reportColumnHeaderRows = reportColumnHeaderRows; + + ReportRowHeaderCols reportRowHeaderCols = new ReportRowHeaderCols(); + RowHeaderCol rowHeaderCol = new RowHeaderCol(); + rowHeaderCol.add("test"); + RowHeaderCol rowHeaderCol1 = new RowHeaderCol(); + rowHeaderCol1.add("test1"); + reportRowHeaderCols.addRowHeaderCol(rowHeaderCol); + reportRowHeaderCols.addRowHeaderCol(rowHeaderCol1); + rd.reportRowHeaderCols = reportRowHeaderCols; + + ReportDataRows rdr = new ReportDataRows(); + Connection conn = mock(Connection.class); + Statement st = mock(Statement.class); + ResultSet resSet = mock(ResultSet.class); + ResultSetMetaData resSetMD = mock(ResultSetMetaData.class); + DataRow dr = new DataRow(); + rdr.add(dr); + rd.reportDataRows = rdr; + when(Globals.isCoverPageNeeded()).thenReturn(true); + when(Globals.getSessionInfoForTheCoverPage()).thenReturn("test,test1"); + when(AppUtils.getRequestNvlValue(mockedRequest, "test1")).thenReturn("test1"); + when(rr.isPDFCoverPage()).thenReturn(true); + when(rr.getReportID()).thenReturn("test"); + when(rr.getPDFOrientation()).thenReturn("portait"); + when(AppUtils.getRequestNvlValue(mockedRequest, "multiplePieOrder")).thenReturn("row"); + when(AppUtils.getRequestNvlValue(mockedRequest, "multiplePieLabelDisplay")).thenReturn("test"); + when(AppUtils.getRequestNvlValue(mockedRequest, "chartDisplay")).thenReturn("3D"); + when(mockedRequest.getSession().getAttribute("report_runtime")).thenReturn(rr); + when(mockedRequest.getSession().getAttribute("dashboard_report_id")).thenReturn("test"); + ServletContext servConxt = mock(ServletContext.class); + when(mockedRequest.getSession().getServletContext()).thenReturn(servConxt); + when(servConxt.getRealPath(File.separator)).thenReturn("testpath"); + when(rr.getChartType()).thenReturn(AppConstants.GT_PIE_MULTIPLE); + when(rr.getDisplayChart()).thenReturn(true); + ArrayList paramNamePDFValues = new ArrayList(); + paramNamePDFValues.add("test1"); + paramNamePDFValues.add("test2"); + when(rr.getParamNameValuePairsforPDFExcel(mockedRequest, 2)).thenReturn(paramNamePDFValues); + when(rr.getFormFieldComments(mockedRequest)).thenReturn("test"); + when(rr.getLegendPosition()).thenReturn("test"); + when(rr.hideChartToolTips()).thenReturn(true); + when(AppUtils.getRequestNvlValue(mockedRequest, "hideLegend")).thenReturn("Y"); + when(rr.getLegendLabelAngle()).thenReturn("test"); + when(rr.getMaxLabelsInDomainAxis()).thenReturn("test"); + when(rr.getRangeAxisLowerLimit()).thenReturn("10"); + when(rr.getRangeAxisUpperLimit()).thenReturn("10"); + when(AppUtils.getRequestNvlValue(mockedRequest, "totalOnChart")).thenReturn("Y"); + List chartGroups = new ArrayList<>(); + when(rr.getAllChartGroups()).thenReturn(chartGroups); + ReportParamValues reportValues = new ReportParamValues(); + when(rr.getReportParamValues()).thenReturn(reportValues); + when(rr.getFormFieldFilled(rr.getChartLeftAxisLabel())).thenReturn("test"); + when(rr.getFormFieldFilled(rr.getChartRightAxisLabel())).thenReturn("test"); + HashMap requestParams = new HashMap<>(); + requestParams.put("", "test"); + + DataSourceList dataSourceList = new DataSourceList(); + + when(crType.getDataSourceList()).thenReturn(dataSourceList); + + when(Globals.getRequestParamtersMap(mockedRequest, false)).thenReturn(requestParams); + ds.set(0, "test"); + when(mockedRequest.getSession().getAttribute(AppConstants.RI_CHART_DATA)).thenReturn(ds); + when(rr.hasSeriesColumn()).thenReturn(true); + TreeMap values = new TreeMap<>(); + values.put("test", rr); + TreeMap values2 = new TreeMap<>(); + values2.put("test3", rd); + TreeMap values3 = new TreeMap<>(); + values3.put("test4", "c"); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTRUNTIME_MAP)).thenReturn(values); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTDATA_MAP)).thenReturn(values2); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_DISPLAYTYPE_MAP)).thenReturn(values3); + Mockito.when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REP_ID)).thenReturn("test123"); + List newlist = new ArrayList<>(); + newlist.add(1); + Mockito.when(mockedRequest.getSession().getAttribute(AppConstants.SI_FORMFIELD_DOWNLOAD_INFO)) + .thenReturn(newlist); + when(mockedRequest.getSession().getAttribute(AppConstants.RI_REPORT_DATA)).thenReturn(rd); + Mockito.when(rr.getReportType()).thenReturn("test"); + Mockito.when(rd.getTotalColumnCount()).thenReturn(2); + PowerMockito.whenNew(ReportHandler.class).withNoArguments().thenReturn(reportHandler); + Mockito.when(reportHandler.loadReportDefinition(Matchers.any(HttpServletRequest.class), Matchers.anyString())) + .thenReturn(rdef); + pdfReportHandler.createPdfFileContent(mockedRequest, mockedResponse, 3); + } + + @Test + public void createPdfFileContent_case6Test() throws Exception { + PowerMockito.mockStatic(Image.class); + Document doc = mock(Document.class); + CustomReportType crType = mock(CustomReportType.class); + + DataSet ds = mock(DataSet.class); + PowerMockito.whenNew(Document.class).withNoArguments().thenReturn(doc); + PowerMockito.when(doc.newPage()).thenReturn(true); + when(AppUtils.getUserID(mockedRequest)).thenReturn("test"); + ReportRuntime rr = mock(ReportRuntime.class); + ReportData rd = mock(ReportData.class); + + ReportDataRows reportDataRows = new ReportDataRows(); + DataRow dataRow1 = new DataRow(); + DataRow dataRow = new DataRow(); + DataValue value = new DataValue(); + DataValue value1 = new DataValue(); + dataRow1.addDataValue(value); + dataRow1.addDataValue(value1); + reportDataRows.addDataRow(dataRow1); + reportDataRows.add(dataRow1); + reportDataRows.addDataRow(dataRow); + reportDataRows.add(dataRow); + rd.reportDataRows = reportDataRows; + + ReportColumnHeaderRows reportColumnHeaderRows = new ReportColumnHeaderRows(); + ColumnHeaderRow columnHeaderRow = new ColumnHeaderRow(); + ColumnHeader columnHeader = new ColumnHeader(); + columnHeaderRow.add(columnHeader); + ColumnHeader columnHeader1 = new ColumnHeader(); + columnHeader1.setRowSpan(1); + columnHeaderRow.add(columnHeader1); + reportColumnHeaderRows.add(columnHeaderRow); + rd.reportColumnHeaderRows = reportColumnHeaderRows; + + ReportRowHeaderCols reportRowHeaderCols = new ReportRowHeaderCols(); + RowHeaderCol rowHeaderCol = new RowHeaderCol(); + rowHeaderCol.add("test"); + RowHeaderCol rowHeaderCol1 = new RowHeaderCol(); + rowHeaderCol1.add("test1"); + reportRowHeaderCols.addRowHeaderCol(rowHeaderCol); + reportRowHeaderCols.addRowHeaderCol(rowHeaderCol1); + rd.reportRowHeaderCols = reportRowHeaderCols; + + ReportDataRows rdr = new ReportDataRows(); + Connection conn = mock(Connection.class); + Statement st = mock(Statement.class); + ResultSet resSet = mock(ResultSet.class); + ResultSetMetaData resSetMD = mock(ResultSetMetaData.class); + DataRow dr = new DataRow(); + rdr.add(dr); + rd.reportDataRows = rdr; + when(Globals.isCoverPageNeeded()).thenReturn(true); + when(Globals.getSessionInfoForTheCoverPage()).thenReturn("test,test1"); + when(AppUtils.getRequestNvlValue(mockedRequest, "test1")).thenReturn("test1"); + when(rr.isPDFCoverPage()).thenReturn(true); + when(rr.getReportID()).thenReturn("test"); + when(rr.getPDFOrientation()).thenReturn("portait"); + when(AppUtils.getRequestNvlValue(mockedRequest, "multiplePieOrder")).thenReturn("row"); + when(AppUtils.getRequestNvlValue(mockedRequest, "multiplePieLabelDisplay")).thenReturn("test"); + when(AppUtils.getRequestNvlValue(mockedRequest, "chartDisplay")).thenReturn("3D"); + when(mockedRequest.getSession().getAttribute("report_runtime")).thenReturn(rr); + when(mockedRequest.getSession().getAttribute("dashboard_report_id")).thenReturn("test"); + ServletContext servConxt = mock(ServletContext.class); + when(mockedRequest.getSession().getServletContext()).thenReturn(servConxt); + when(servConxt.getRealPath(File.separator)).thenReturn("testpath"); + when(rr.getChartType()).thenReturn(AppConstants.GT_PIE_MULTIPLE); + when(rr.getDisplayChart()).thenReturn(true); + ArrayList paramNamePDFValues = new ArrayList(); + paramNamePDFValues.add("test1"); + paramNamePDFValues.add("test2"); + when(rr.getParamNameValuePairsforPDFExcel(mockedRequest, 2)).thenReturn(paramNamePDFValues); + when(rr.getFormFieldComments(mockedRequest)).thenReturn("test"); + when(rr.getLegendPosition()).thenReturn("test"); + when(rr.hideChartToolTips()).thenReturn(true); + when(AppUtils.getRequestNvlValue(mockedRequest, "hideLegend")).thenReturn("Y"); + when(rr.getLegendLabelAngle()).thenReturn("test"); + when(rr.getMaxLabelsInDomainAxis()).thenReturn("test"); + when(rr.getRangeAxisLowerLimit()).thenReturn("10"); + when(rr.getRangeAxisUpperLimit()).thenReturn("10"); + when(AppUtils.getRequestNvlValue(mockedRequest, "totalOnChart")).thenReturn("Y"); + List chartGroups = new ArrayList<>(); + when(rr.getAllChartGroups()).thenReturn(chartGroups); + ReportParamValues reportValues = new ReportParamValues(); + when(rr.getReportParamValues()).thenReturn(reportValues); + when(rr.getFormFieldFilled(rr.getChartLeftAxisLabel())).thenReturn("test"); + when(rr.getFormFieldFilled(rr.getChartRightAxisLabel())).thenReturn("test"); + HashMap requestParams = new HashMap<>(); + requestParams.put("", "test"); + + DataSourceList dataSourceList = new DataSourceList(); + + when(crType.getDataSourceList()).thenReturn(dataSourceList); + + when(Globals.getRequestParamtersMap(mockedRequest, false)).thenReturn(requestParams); + ds.set(0, "test"); + when(mockedRequest.getSession().getAttribute(AppConstants.RI_CHART_DATA)).thenReturn(ds); + when(rr.hasSeriesColumn()).thenReturn(true); + TreeMap values = new TreeMap<>(); + values.put("test", rr); + TreeMap values2 = new TreeMap<>(); + values2.put("test3", rd); + TreeMap values3 = new TreeMap<>(); + values3.put("test4", "c"); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTRUNTIME_MAP)).thenReturn(values); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTDATA_MAP)).thenReturn(values2); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_DISPLAYTYPE_MAP)).thenReturn(values3); + Mockito.when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REP_ID)).thenReturn("test123"); + List newlist = new ArrayList<>(); + newlist.add(1); + Mockito.when(mockedRequest.getSession().getAttribute(AppConstants.SI_FORMFIELD_DOWNLOAD_INFO)) + .thenReturn(newlist); + when(mockedRequest.getSession().getAttribute(AppConstants.RI_REPORT_DATA)).thenReturn(rd); + Mockito.when(rr.getReportType()).thenReturn("test"); + Mockito.when(rd.getTotalColumnCount()).thenReturn(2); + PowerMockito.whenNew(ReportHandler.class).withNoArguments().thenReturn(reportHandler); + Mockito.when(reportHandler.loadReportDefinition(Matchers.any(HttpServletRequest.class), Matchers.anyString())) + .thenReturn(rdef); + Mockito.when(rdef.getVisibleColumnCount()).thenReturn(2); + + List dataColumnTypeList = new ArrayList<>(); + DataColumnType dataColumnType = new DataColumnType(); + dataColumnType.setChartGroup("test"); + dataColumnType.setYAxis("test"); + dataColumnType.setColName("[test"); + dataColumnType.setColOnChart("LEGEND"); + dataColumnType.setDisplayName("chart_total"); + dataColumnType.setColId("1"); + dataColumnType.setTableId("1"); + dataColumnType.setColType("DATE"); + dataColumnType.setCrossTabValue("ROW"); + dataColumnType.setPdfDisplayWidthInPxls("0.0"); + dataColumnType.setVisible(true); + dataColumnType.setCalculated(true); + dataColumnTypeList.add(dataColumnType); + DataColumnType dataColumnType1 = new DataColumnType(); + dataColumnType1.setCrossTabValue("COLUMN"); + dataColumnType1.setColId("1"); + dataColumnType1.setVisible(true); + dataColumnType1.setPdfDisplayWidthInPxls("1.0"); + dataColumnTypeList.add(dataColumnType1); + + Mockito.when(rdef.getAllColumns()).thenReturn(dataColumnTypeList); + Mockito.when(Globals.getDataTableHeaderFontColor()).thenReturn("test"); + PowerMockito.mockStatic(Color.class); + Color color = new Color(1); + Mockito.when(Color.decode(Matchers.anyString())).thenReturn(color); + pdfReportHandler.createPdfFileContent(mockedRequest, mockedResponse, 3); + } + + @Test + public void createPdfFileContent_case7Test() throws Exception { + PowerMockito.mockStatic(Image.class); + Document doc = mock(Document.class); + CustomReportType crType = mock(CustomReportType.class); + + DataSet ds = mock(DataSet.class); + PowerMockito.whenNew(Document.class).withNoArguments().thenReturn(doc); + PowerMockito.when(doc.newPage()).thenReturn(true); + when(AppUtils.getUserID(mockedRequest)).thenReturn("test"); + ReportRuntime rr = mock(ReportRuntime.class); + ReportData rd = mock(ReportData.class); + + ReportDataRows reportDataRows = new ReportDataRows(); + DataRow dataRow1 = new DataRow(); + DataRow dataRow = new DataRow(); + DataValue value = new DataValue(); + DataValue value1 = new DataValue(); + dataRow1.addDataValue(value); + dataRow1.addDataValue(value1); + reportDataRows.addDataRow(dataRow1); + reportDataRows.add(dataRow1); + reportDataRows.addDataRow(dataRow); + reportDataRows.add(dataRow); + rd.reportDataRows = reportDataRows; + + ReportColumnHeaderRows reportColumnHeaderRows = new ReportColumnHeaderRows(); + ColumnHeaderRow columnHeaderRow = new ColumnHeaderRow(); + ColumnHeader columnHeader = new ColumnHeader(); + columnHeaderRow.add(columnHeader); + ColumnHeader columnHeader1 = new ColumnHeader(); + columnHeader1.setRowSpan(1); + columnHeaderRow.add(columnHeader1); + reportColumnHeaderRows.add(columnHeaderRow); + rd.reportColumnHeaderRows = reportColumnHeaderRows; + + ReportRowHeaderCols reportRowHeaderCols = new ReportRowHeaderCols(); + RowHeaderCol rowHeaderCol = new RowHeaderCol(); + rowHeaderCol.add("test"); + RowHeaderCol rowHeaderCol1 = new RowHeaderCol(); + rowHeaderCol1.add("test1"); + reportRowHeaderCols.addRowHeaderCol(rowHeaderCol); + reportRowHeaderCols.addRowHeaderCol(rowHeaderCol1); + rd.reportRowHeaderCols = reportRowHeaderCols; + + ReportDataRows rdr = new ReportDataRows(); + Connection conn = mock(Connection.class); + Statement st = mock(Statement.class); + ResultSet resSet = mock(ResultSet.class); + ResultSetMetaData resSetMD = mock(ResultSetMetaData.class); + DataRow dr = new DataRow(); + rdr.add(dr); + rd.reportDataRows = rdr; + when(Globals.isCoverPageNeeded()).thenReturn(true); + when(Globals.getSessionInfoForTheCoverPage()).thenReturn("test,test1"); + when(AppUtils.getRequestNvlValue(mockedRequest, "test1")).thenReturn("test1"); + when(rr.isPDFCoverPage()).thenReturn(true); + when(rr.getReportID()).thenReturn("test"); + when(rr.getPDFOrientation()).thenReturn("portait"); + when(AppUtils.getRequestNvlValue(mockedRequest, "multiplePieOrder")).thenReturn("row"); + when(AppUtils.getRequestNvlValue(mockedRequest, "multiplePieLabelDisplay")).thenReturn("test"); + when(AppUtils.getRequestNvlValue(mockedRequest, "chartDisplay")).thenReturn("3D"); + when(mockedRequest.getSession().getAttribute("report_runtime")).thenReturn(rr); + when(mockedRequest.getSession().getAttribute("dashboard_report_id")).thenReturn("test"); + ServletContext servConxt = mock(ServletContext.class); + when(mockedRequest.getSession().getServletContext()).thenReturn(servConxt); + when(servConxt.getRealPath(File.separator)).thenReturn("testpath"); + when(rr.getChartType()).thenReturn(AppConstants.GT_PIE_MULTIPLE); + when(rr.getDisplayChart()).thenReturn(true); + ArrayList paramNamePDFValues = new ArrayList(); + paramNamePDFValues.add("test1"); + paramNamePDFValues.add("test2"); + when(rr.getParamNameValuePairsforPDFExcel(mockedRequest, 2)).thenReturn(paramNamePDFValues); + when(rr.getFormFieldComments(mockedRequest)).thenReturn("test"); + when(rr.getLegendPosition()).thenReturn("test"); + when(rr.hideChartToolTips()).thenReturn(true); + when(AppUtils.getRequestNvlValue(mockedRequest, "hideLegend")).thenReturn("Y"); + when(rr.getLegendLabelAngle()).thenReturn("test"); + when(rr.getMaxLabelsInDomainAxis()).thenReturn("test"); + when(rr.getRangeAxisLowerLimit()).thenReturn("10"); + when(rr.getRangeAxisUpperLimit()).thenReturn("10"); + when(AppUtils.getRequestNvlValue(mockedRequest, "totalOnChart")).thenReturn("Y"); + List chartGroups = new ArrayList<>(); + when(rr.getAllChartGroups()).thenReturn(chartGroups); + ReportParamValues reportValues = new ReportParamValues(); + when(rr.getReportParamValues()).thenReturn(reportValues); + when(rr.getFormFieldFilled(rr.getChartLeftAxisLabel())).thenReturn("test"); + when(rr.getFormFieldFilled(rr.getChartRightAxisLabel())).thenReturn("test"); + HashMap requestParams = new HashMap<>(); + requestParams.put("", "test"); + + DataSourceList dataSourceList = new DataSourceList(); + + when(crType.getDataSourceList()).thenReturn(dataSourceList); + + when(Globals.getRequestParamtersMap(mockedRequest, false)).thenReturn(requestParams); + ds.set(0, "test"); + when(mockedRequest.getSession().getAttribute(AppConstants.RI_CHART_DATA)).thenReturn(ds); + when(rr.hasSeriesColumn()).thenReturn(true); + TreeMap values = new TreeMap<>(); + values.put("test", rr); + TreeMap values2 = new TreeMap<>(); + values2.put("test3", rd); + TreeMap values3 = new TreeMap<>(); + values3.put("test4", "c"); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTRUNTIME_MAP)).thenReturn(values); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTDATA_MAP)).thenReturn(values2); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_DISPLAYTYPE_MAP)).thenReturn(values3); + Mockito.when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REP_ID)).thenReturn("test123"); + List newlist = new ArrayList<>(); + newlist.add(1); + Mockito.when(mockedRequest.getSession().getAttribute(AppConstants.SI_FORMFIELD_DOWNLOAD_INFO)) + .thenReturn(newlist); + when(mockedRequest.getSession().getAttribute(AppConstants.RI_REPORT_DATA)).thenReturn(rd); + Mockito.when(rr.getReportType()).thenReturn("test"); + Mockito.when(rd.getTotalColumnCount()).thenReturn(2); + PowerMockito.whenNew(ReportHandler.class).withNoArguments().thenReturn(reportHandler); + Mockito.when(reportHandler.loadReportDefinition(Matchers.any(HttpServletRequest.class), Matchers.anyString())) + .thenReturn(rdef); + Mockito.when(rdef.getVisibleColumnCount()).thenReturn(2); + + List dataColumnTypeList = new ArrayList<>(); + DataColumnType dataColumnType = new DataColumnType(); + dataColumnType.setChartGroup("test"); + dataColumnType.setYAxis("test"); + dataColumnType.setColName("[test"); + dataColumnType.setColOnChart("LEGEND"); + dataColumnType.setDisplayName("chart_total"); + dataColumnType.setColId("1"); + dataColumnType.setTableId("1"); + dataColumnType.setColType("DATE"); + dataColumnType.setCrossTabValue("ROW"); + dataColumnType.setPdfDisplayWidthInPxls("0.0"); + dataColumnType.setVisible(true); + dataColumnType.setCalculated(true); + dataColumnTypeList.add(dataColumnType); + DataColumnType dataColumnType1 = new DataColumnType(); + dataColumnType1.setCrossTabValue("COLUMN"); + dataColumnType1.setColId("1"); + dataColumnType1.setVisible(true); + dataColumnType1.setPdfDisplayWidthInPxls("1.0"); + dataColumnTypeList.add(dataColumnType1); + + Mockito.when(rdef.getAllColumns()).thenReturn(dataColumnTypeList); + Mockito.when(Globals.getDataTableHeaderFontColor()).thenReturn("test"); + PowerMockito.mockStatic(Color.class); + Color color = new Color(1); + Mockito.when(Color.decode(Matchers.anyString())).thenReturn(color); + when(mockedRequest.getSession().getAttribute("TITLE_0")).thenReturn("title"); + when(mockedRequest.getSession().getAttribute("drilldown_index")).thenReturn("drilldown_index"); + when(mockedRequest.getSession().getAttribute("SUBTITLE_0")).thenReturn("subtitle"); + pdfReportHandler.createPdfFileContent(mockedRequest, mockedResponse, 3); + } + + @Test(expected = org.onap.portalsdk.analytics.error.RaptorException.class) + public void createPdfFileContent_case8Test() throws Exception { + PowerMockito.mockStatic(Image.class); + Document doc = mock(Document.class); + CustomReportType crType = mock(CustomReportType.class); + + DataSet ds = mock(DataSet.class); + PowerMockito.whenNew(Document.class).withNoArguments().thenReturn(doc); + PowerMockito.when(doc.newPage()).thenReturn(true); + when(AppUtils.getUserID(mockedRequest)).thenReturn("test"); + ReportRuntime rr = mock(ReportRuntime.class); + ReportData rd = mock(ReportData.class); + + ReportDataRows reportDataRows = new ReportDataRows(); + DataRow dataRow1 = new DataRow(); + DataRow dataRow = new DataRow(); + DataValue value = new DataValue(); + DataValue value1 = new DataValue(); + dataRow1.addDataValue(value); + dataRow1.addDataValue(value1); + reportDataRows.addDataRow(dataRow1); + reportDataRows.add(dataRow1); + reportDataRows.addDataRow(dataRow); + reportDataRows.add(dataRow); + rd.reportDataRows = reportDataRows; + + ReportColumnHeaderRows reportColumnHeaderRows = new ReportColumnHeaderRows(); + ColumnHeaderRow columnHeaderRow = new ColumnHeaderRow(); + ColumnHeader columnHeader = new ColumnHeader(); + columnHeaderRow.add(columnHeader); + ColumnHeader columnHeader1 = new ColumnHeader(); + columnHeader1.setRowSpan(1); + columnHeaderRow.add(columnHeader1); + reportColumnHeaderRows.add(columnHeaderRow); + rd.reportColumnHeaderRows = reportColumnHeaderRows; + + ReportRowHeaderCols reportRowHeaderCols = new ReportRowHeaderCols(); + RowHeaderCol rowHeaderCol = new RowHeaderCol(); + rowHeaderCol.add("test"); + RowHeaderCol rowHeaderCol1 = new RowHeaderCol(); + rowHeaderCol1.add("test1"); + reportRowHeaderCols.addRowHeaderCol(rowHeaderCol); + reportRowHeaderCols.addRowHeaderCol(rowHeaderCol1); + rd.reportRowHeaderCols = reportRowHeaderCols; + + ReportDataRows rdr = new ReportDataRows(); + Connection conn = mock(Connection.class); + Statement st = mock(Statement.class); + ResultSet resSet = mock(ResultSet.class); + ResultSetMetaData resSetMD = mock(ResultSetMetaData.class); + DataRow dr = new DataRow(); + rdr.add(dr); + rd.reportDataRows = rdr; + when(Globals.isCoverPageNeeded()).thenReturn(true); + when(Globals.getSessionInfoForTheCoverPage()).thenReturn("test,test1"); + when(AppUtils.getRequestNvlValue(mockedRequest, "test1")).thenReturn("test1"); + when(rr.isPDFCoverPage()).thenReturn(true); + when(rr.getReportID()).thenReturn("test"); + when(rr.getPDFOrientation()).thenReturn("portait"); + when(AppUtils.getRequestNvlValue(mockedRequest, "multiplePieOrder")).thenReturn("row"); + when(AppUtils.getRequestNvlValue(mockedRequest, "multiplePieLabelDisplay")).thenReturn("test"); + when(AppUtils.getRequestNvlValue(mockedRequest, "chartDisplay")).thenReturn("3D"); + when(mockedRequest.getSession().getAttribute("report_runtime")).thenReturn(rr); + when(mockedRequest.getSession().getAttribute("dashboard_report_id")).thenReturn("test"); + ServletContext servConxt = mock(ServletContext.class); + when(mockedRequest.getSession().getServletContext()).thenReturn(servConxt); + when(servConxt.getRealPath(File.separator)).thenReturn("testpath"); + when(rr.getChartType()).thenReturn(AppConstants.GT_PIE_MULTIPLE); + when(rr.getDisplayChart()).thenReturn(true); + ArrayList paramNamePDFValues = new ArrayList(); + paramNamePDFValues.add("test1"); + paramNamePDFValues.add("test2"); + when(rr.getParamNameValuePairsforPDFExcel(mockedRequest, 2)).thenReturn(paramNamePDFValues); + when(rr.getFormFieldComments(mockedRequest)).thenReturn("test"); + when(rr.getLegendPosition()).thenReturn("test"); + when(rr.hideChartToolTips()).thenReturn(true); + when(AppUtils.getRequestNvlValue(mockedRequest, "hideLegend")).thenReturn("Y"); + when(rr.getLegendLabelAngle()).thenReturn("test"); + when(rr.getMaxLabelsInDomainAxis()).thenReturn("test"); + when(rr.getRangeAxisLowerLimit()).thenReturn("10"); + when(rr.getRangeAxisUpperLimit()).thenReturn("10"); + when(AppUtils.getRequestNvlValue(mockedRequest, "totalOnChart")).thenReturn("Y"); + List chartGroups = new ArrayList<>(); + when(rr.getAllChartGroups()).thenReturn(chartGroups); + ReportParamValues reportValues = new ReportParamValues(); + when(rr.getReportParamValues()).thenReturn(reportValues); + when(rr.getFormFieldFilled(rr.getChartLeftAxisLabel())).thenReturn("test"); + when(rr.getFormFieldFilled(rr.getChartRightAxisLabel())).thenReturn("test"); + HashMap requestParams = new HashMap<>(); + requestParams.put("", "test"); + + DataSourceList dataSourceList = new DataSourceList(); + + when(crType.getDataSourceList()).thenReturn(dataSourceList); + + when(Globals.getRequestParamtersMap(mockedRequest, false)).thenReturn(requestParams); + ds.set(0, "test"); + when(mockedRequest.getSession().getAttribute(AppConstants.RI_CHART_DATA)).thenReturn(ds); + when(rr.hasSeriesColumn()).thenReturn(true); + TreeMap values = new TreeMap<>(); + values.put("test", rr); + TreeMap values2 = new TreeMap<>(); + values2.put("test3", rd); + TreeMap values3 = new TreeMap<>(); + values3.put("test4", "c"); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTRUNTIME_MAP)).thenReturn(values); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTDATA_MAP)).thenReturn(values2); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_DISPLAYTYPE_MAP)).thenReturn(values3); + Mockito.when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REP_ID)).thenReturn("test123"); + List newlist = new ArrayList<>(); + newlist.add(1); + Mockito.when(mockedRequest.getSession().getAttribute(AppConstants.SI_FORMFIELD_DOWNLOAD_INFO)) + .thenReturn(newlist); + when(mockedRequest.getSession().getAttribute(AppConstants.RI_REPORT_DATA)).thenReturn(rd); + Mockito.when(rr.getReportType()).thenReturn("Linear"); + Mockito.when(rd.getTotalColumnCount()).thenReturn(2); + PowerMockito.whenNew(ReportHandler.class).withNoArguments().thenReturn(reportHandler); + Mockito.when(reportHandler.loadReportDefinition(Matchers.any(HttpServletRequest.class), Matchers.anyString())) + .thenReturn(rdef); + Mockito.when(rdef.getVisibleColumnCount()).thenReturn(2); + + List dataColumnTypeList = new ArrayList<>(); + DataColumnType dataColumnType = new DataColumnType(); + dataColumnType.setChartGroup("test"); + dataColumnType.setYAxis("test"); + dataColumnType.setColName("[test"); + dataColumnType.setColOnChart("LEGEND"); + dataColumnType.setDisplayName("chart_total"); + dataColumnType.setColId("1"); + dataColumnType.setTableId("1"); + dataColumnType.setColType("DATE"); + dataColumnType.setCrossTabValue("ROW"); + dataColumnType.setPdfDisplayWidthInPxls("0.0"); + dataColumnType.setVisible(true); + dataColumnType.setCalculated(true); + dataColumnTypeList.add(dataColumnType); + DataColumnType dataColumnType1 = new DataColumnType(); + dataColumnType1.setCrossTabValue("COLUMN"); + dataColumnType1.setColId("1"); + dataColumnType1.setVisible(true); + dataColumnType1.setPdfDisplayWidthInPxls("1.0"); + dataColumnTypeList.add(dataColumnType1); + List dataColumnTypeList1 = new ArrayList<>(); + Mockito.when(rdef.getAllColumns()).thenReturn(dataColumnTypeList); + Mockito.when(Globals.getDataTableHeaderFontColor()).thenReturn("test"); + PowerMockito.mockStatic(Color.class); + Color color = new Color(1); + Mockito.when(Color.decode(Matchers.anyString())).thenReturn(color); + when(mockedRequest.getSession().getAttribute("TITLE_0")).thenReturn("title"); + when(mockedRequest.getSession().getAttribute("drilldown_index")).thenReturn("drilldown_index"); + when(mockedRequest.getSession().getAttribute("SUBTITLE_0")).thenReturn("subtitle"); + Mockito.when(mockedRequest.getAttribute(AppConstants.RI_REPORT_SQL_WHOLE)).thenReturn("test"); + PowerMockito.mockStatic(ConnectionUtils.class); + + Mockito.when(ConnectionUtils.getConnection(Matchers.anyString())).thenReturn(conn); + Mockito.when(conn.createStatement()).thenReturn(st); + Mockito.when(st.executeQuery(Matchers.anyString())).thenReturn(resSet); + Mockito.when(resSet.getMetaData()).thenReturn(resSetMD); + Mockito.when(resSetMD.getColumnCount()).thenReturn(2); + Mockito.when(resSet.next()).thenReturn(true); + pdfReportHandler.createPdfFileContent(mockedRequest, mockedResponse, 3); + } + + @Test(expected = org.onap.portalsdk.analytics.error.RaptorException.class) + public void createPdfFileContent_case9Test() throws Exception { + PowerMockito.mockStatic(Image.class); + Document doc = mock(Document.class); + CustomReportType crType = mock(CustomReportType.class); + + DataSet ds = mock(DataSet.class); + PowerMockito.whenNew(Document.class).withNoArguments().thenReturn(doc); + PowerMockito.when(doc.newPage()).thenReturn(true); + when(AppUtils.getUserID(mockedRequest)).thenReturn("test"); + ReportRuntime rr = mock(ReportRuntime.class); + ReportData rd = mock(ReportData.class); + + ReportDataRows reportDataRows = new ReportDataRows(); + DataRow dataRow1 = new DataRow(); + DataRow dataRow = new DataRow(); + DataRow dataRow2 = new DataRow(); + + ArrayList dataValueList = new ArrayList<>(); + DataValue value = new DataValue(); + value.setColId("test"); + value.setVisible(true); + DataValue value1 = new DataValue(); + DataValue value2 = new DataValue(); + + dataValueList.add(value); + dataValueList.add(value1); + dataValueList.add(value2); + dataRow.addDataValue(value); + dataRow.addDataValue(value1); + dataRow.addDataValue(value2); + dataRow.setDataValueList(dataValueList); + + dataRow2.addDataValue(value); + dataRow2.addDataValue(value1); + dataRow2.addDataValue(value2); + dataRow2.setDataValueList(dataValueList); + + dataRow1.addDataValue(value); + dataRow1.addDataValue(value1); + dataRow1.addDataValue(value2); + dataRow1.setDataValueList(dataValueList); + + reportDataRows.addDataRow(dataRow1); + reportDataRows.add(dataRow1); + reportDataRows.addDataRow(dataRow2); + reportDataRows.add(dataRow2); + reportDataRows.addDataRow(dataRow); + reportDataRows.add(dataRow); + rd.reportDataRows = reportDataRows; + ReportColumnHeaderRows reportColumnHeaderRows = new ReportColumnHeaderRows(); + ColumnHeaderRow columnHeaderRow = new ColumnHeaderRow(); + ColumnHeader columnHeader = new ColumnHeader(); + columnHeaderRow.add(columnHeader); + ColumnHeader columnHeader1 = new ColumnHeader(); + columnHeader1.setRowSpan(1); + columnHeaderRow.add(columnHeader1); + reportColumnHeaderRows.add(columnHeaderRow); + rd.reportColumnHeaderRows = reportColumnHeaderRows; + + ReportRowHeaderCols reportRowHeaderCols = new ReportRowHeaderCols(); + RowHeaderCol rowHeaderCol = new RowHeaderCol(); + rowHeaderCol.add("test"); + RowHeaderCol rowHeaderCol1 = new RowHeaderCol(); + rowHeaderCol1.add("test1"); + reportRowHeaderCols.addRowHeaderCol(rowHeaderCol); + reportRowHeaderCols.addRowHeaderCol(rowHeaderCol1); + rd.reportRowHeaderCols = reportRowHeaderCols; + + ReportDataRows rdr = new ReportDataRows(); + Connection conn = mock(Connection.class); + Statement st = mock(Statement.class); + ResultSet resSet = mock(ResultSet.class); + ResultSetMetaData resSetMD = mock(ResultSetMetaData.class); + DataRow dr = new DataRow(); + rdr.add(dr); + when(Globals.isCoverPageNeeded()).thenReturn(true); + when(Globals.getSessionInfoForTheCoverPage()).thenReturn("test,test1"); + when(AppUtils.getRequestNvlValue(mockedRequest, "test1")).thenReturn("test1"); + when(rr.isPDFCoverPage()).thenReturn(true); + when(rr.getReportID()).thenReturn("test"); + when(rr.getPDFOrientation()).thenReturn("portait"); + when(AppUtils.getRequestNvlValue(mockedRequest, "multiplePieOrder")).thenReturn("row"); + when(AppUtils.getRequestNvlValue(mockedRequest, "multiplePieLabelDisplay")).thenReturn("test"); + when(AppUtils.getRequestNvlValue(mockedRequest, "chartDisplay")).thenReturn("3D"); + when(mockedRequest.getSession().getAttribute("report_runtime")).thenReturn(rr); + when(mockedRequest.getSession().getAttribute("dashboard_report_id")).thenReturn("test"); + ServletContext servConxt = mock(ServletContext.class); + when(mockedRequest.getSession().getServletContext()).thenReturn(servConxt); + when(servConxt.getRealPath(File.separator)).thenReturn("testpath"); + when(rr.getChartType()).thenReturn(AppConstants.GT_PIE_MULTIPLE); + when(rr.getDisplayChart()).thenReturn(true); + ArrayList paramNamePDFValues = new ArrayList(); + paramNamePDFValues.add("test1"); + paramNamePDFValues.add("test2"); + when(rr.getParamNameValuePairsforPDFExcel(mockedRequest, 2)).thenReturn(paramNamePDFValues); + when(rr.getFormFieldComments(mockedRequest)).thenReturn("test"); + when(rr.getLegendPosition()).thenReturn("test"); + when(rr.hideChartToolTips()).thenReturn(true); + when(AppUtils.getRequestNvlValue(mockedRequest, "hideLegend")).thenReturn("Y"); + when(rr.getLegendLabelAngle()).thenReturn("test"); + when(rr.getMaxLabelsInDomainAxis()).thenReturn("test"); + when(rr.getRangeAxisLowerLimit()).thenReturn("10"); + when(rr.getRangeAxisUpperLimit()).thenReturn("10"); + when(AppUtils.getRequestNvlValue(mockedRequest, "totalOnChart")).thenReturn("Y"); + List chartGroups = new ArrayList<>(); + when(rr.getAllChartGroups()).thenReturn(chartGroups); + ReportParamValues reportValues = new ReportParamValues(); + when(rr.getReportParamValues()).thenReturn(reportValues); + when(rr.getFormFieldFilled(rr.getChartLeftAxisLabel())).thenReturn("test"); + when(rr.getFormFieldFilled(rr.getChartRightAxisLabel())).thenReturn("test"); + HashMap requestParams = new HashMap<>(); + requestParams.put("", "test"); + + DataSourceList dataSourceList = new DataSourceList(); + + when(crType.getDataSourceList()).thenReturn(dataSourceList); + + when(Globals.getRequestParamtersMap(mockedRequest, false)).thenReturn(requestParams); + ds.set(0, "test"); + when(mockedRequest.getSession().getAttribute(AppConstants.RI_CHART_DATA)).thenReturn(ds); + when(rr.hasSeriesColumn()).thenReturn(true); + TreeMap values = new TreeMap<>(); + values.put("test", rr); + TreeMap values2 = new TreeMap<>(); + values2.put("test3", rd); + TreeMap values3 = new TreeMap<>(); + values3.put("test4", "c"); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTRUNTIME_MAP)).thenReturn(values); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTDATA_MAP)).thenReturn(values2); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_DISPLAYTYPE_MAP)).thenReturn(values3); + Mockito.when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REP_ID)).thenReturn("test123"); + List newlist = new ArrayList<>(); + newlist.add(1); + Mockito.when(mockedRequest.getSession().getAttribute(AppConstants.SI_FORMFIELD_DOWNLOAD_INFO)) + .thenReturn(newlist); + when(mockedRequest.getSession().getAttribute(AppConstants.RI_REPORT_DATA)).thenReturn(rd); + Mockito.when(rr.getReportType()).thenReturn("Linear"); + Mockito.when(rd.getTotalColumnCount()).thenReturn(2); + PowerMockito.whenNew(ReportHandler.class).withNoArguments().thenReturn(reportHandler); + Mockito.when(reportHandler.loadReportDefinition(Matchers.any(HttpServletRequest.class), Matchers.anyString())) + .thenReturn(rdef); + Mockito.when(rdef.getVisibleColumnCount()).thenReturn(2); + + List dataColumnTypeList = new ArrayList<>(); + DataColumnType dataColumnType = new DataColumnType(); + dataColumnType.setChartGroup("test"); + dataColumnType.setYAxis("test"); + dataColumnType.setColName("[test"); + dataColumnType.setColOnChart("LEGEND"); + dataColumnType.setDisplayName("chart_total"); + dataColumnType.setColId("1"); + dataColumnType.setTableId("1"); + dataColumnType.setColType("DATE"); + dataColumnType.setCrossTabValue("ROW"); + dataColumnType.setPdfDisplayWidthInPxls("0.0"); + dataColumnType.setVisible(true); + dataColumnType.setCalculated(true); + dataColumnTypeList.add(dataColumnType); + DataColumnType dataColumnType1 = new DataColumnType(); + dataColumnType1.setCrossTabValue("COLUMN"); + dataColumnType1.setColId("1"); + dataColumnType1.setVisible(true); + dataColumnType1.setPdfDisplayWidthInPxls("1.0"); + dataColumnTypeList.add(dataColumnType1); + List dataColumnTypeList1 = new ArrayList<>(); + Mockito.when(rdef.getAllColumns()).thenReturn(dataColumnTypeList); + Mockito.when(Globals.getDataTableHeaderFontColor()).thenReturn("test"); + PowerMockito.mockStatic(Color.class); + Color color = new Color(1); + Mockito.when(Color.decode(Matchers.anyString())).thenReturn(color); + when(mockedRequest.getSession().getAttribute("TITLE_0")).thenReturn("title"); + when(mockedRequest.getSession().getAttribute("drilldown_index")).thenReturn("drilldown_index"); + when(mockedRequest.getSession().getAttribute("SUBTITLE_0")).thenReturn("subtitle"); + Mockito.when(mockedRequest.getAttribute(AppConstants.RI_REPORT_SQL_WHOLE)).thenReturn("test"); + PowerMockito.mockStatic(ConnectionUtils.class); + + Mockito.when(ConnectionUtils.getConnection(Matchers.anyString())).thenReturn(conn); + Mockito.when(conn.createStatement()).thenReturn(st); + Mockito.when(st.executeQuery(Matchers.anyString())).thenReturn(resSet); + Mockito.when(resSet.getMetaData()).thenReturn(resSetMD); + Mockito.when(resSetMD.getColumnCount()).thenReturn(2); + Mockito.when(resSet.next()).thenReturn(true); + Mockito.when(resSetMD.getColumnLabel(Matchers.anyInt())).thenReturn("test"); + Mockito.when(resSet.getString(Matchers.anyInt())).thenReturn("test"); + pdfReportHandler.createPdfFileContent(mockedRequest, mockedResponse, 3); + } + + @Test + public void createPdfFileContent10Test() throws Exception { + PowerMockito.mockStatic(Image.class); + Document doc = mock(Document.class); + CustomReportType crType = mock(CustomReportType.class); + + DataSet ds = mock(DataSet.class); + PowerMockito.whenNew(Document.class).withNoArguments().thenReturn(doc); + PowerMockito.when(doc.newPage()).thenReturn(true); + when(AppUtils.getUserID(mockedRequest)).thenReturn("test"); + ReportRuntime rr = mock(ReportRuntime.class); + ReportData rd = mock(ReportData.class); + when(Globals.isCoverPageNeeded()).thenReturn(true); + when(Globals.getSessionInfoForTheCoverPage()).thenReturn("test,test1"); + when(AppUtils.getRequestNvlValue(mockedRequest, "test1")).thenReturn("test1"); + when(rr.isPDFCoverPage()).thenReturn(true); + when(rr.getReportID()).thenReturn("test"); + when(rr.getPDFOrientation()).thenReturn("portait"); + when(AppUtils.getRequestNvlValue(mockedRequest, "chartOrientation")).thenReturn("vertical"); + when(AppUtils.getRequestNvlValue(mockedRequest, "secondaryChartRenderer")).thenReturn("test"); + when(AppUtils.getRequestNvlValue(mockedRequest, "chartDisplay")).thenReturn("3D"); + when(mockedRequest.getSession().getAttribute("report_runtime")).thenReturn(rr); + when(mockedRequest.getSession().getAttribute("dashboard_report_id")).thenReturn("test"); + ServletContext servConxt = mock(ServletContext.class); + when(mockedRequest.getSession().getServletContext()).thenReturn(servConxt); + when(servConxt.getRealPath(File.separator)).thenReturn("testpath"); + when(rr.getChartType()).thenReturn("TimeSeriesChart"); + when(rr.getDisplayChart()).thenReturn(true); + ArrayList paramNamePDFValues = new ArrayList(); + paramNamePDFValues.add("test1"); + paramNamePDFValues.add("test2"); + when(rr.getParamNameValuePairsforPDFExcel(mockedRequest, 2)).thenReturn(paramNamePDFValues); + when(rr.getFormFieldComments(mockedRequest)).thenReturn("test"); + when(rr.getLegendPosition()).thenReturn("test"); + when(rr.hideChartToolTips()).thenReturn(true); + when(AppUtils.getRequestNvlValue(mockedRequest, "hideLegend")).thenReturn("Y"); + when(rr.getLegendLabelAngle()).thenReturn("test"); + when(rr.getMaxLabelsInDomainAxis()).thenReturn("test"); + when(rr.getRangeAxisLowerLimit()).thenReturn("10"); + when(rr.getRangeAxisUpperLimit()).thenReturn("10"); + when(AppUtils.getRequestNvlValue(mockedRequest, "totalOnChart")).thenReturn("Y"); + List chartGroups = new ArrayList<>(); + when(rr.getAllChartGroups()).thenReturn(chartGroups); + ReportParamValues reportValues = new ReportParamValues(); + when(rr.getReportParamValues()).thenReturn(reportValues); + when(rr.getFormFieldFilled(rr.getChartLeftAxisLabel())).thenReturn("test"); + when(rr.getFormFieldFilled(rr.getChartRightAxisLabel())).thenReturn("test"); + HashMap requestParams = new HashMap<>(); + requestParams.put("", "test"); + + DataSourceList dataSourceList = new DataSourceList(); + + List list = new ArrayList<>(); + DataSourceType dataSourceType = new DataSourceType(); + dataSourceType.setTableName("test"); + dataSourceType.setRefTableId("1"); + dataSourceType.setTableId("1"); + List dataColumnTypeList = new ArrayList<>(); + DataColumnType dataColumnType = new DataColumnType(); + dataColumnType.setChartGroup("test"); + dataColumnType.setYAxis("test"); + dataColumnType.setColName("[test"); + dataColumnType.setColOnChart("LEGEND"); + dataColumnType.setDisplayName("chart_total"); + dataColumnType.setColId("1"); + dataColumnType.setTableId("1"); + dataColumnType.setDependsOnFormField("test"); + dataColumnType.setColType("DATE"); + dataColumnType.setCrossTabValue("ROW"); + dataColumnType.setPdfDisplayWidthInPxls("0.0"); + dataColumnType.setVisible(true); + dataColumnType.setCalculated(true); + dataColumnTypeList.add(dataColumnType); + DataColumnType dataColumnType1 = new DataColumnType(); + dataColumnType1.setCrossTabValue("COLUMN"); + dataColumnType1.setColId("1"); + dataColumnType1.setVisible(true); + dataColumnType1.setPdfDisplayWidthInPxls("1.0"); + dataColumnTypeList.add(dataColumnType1); + + DataColumnList dataColumnList = new DataColumnList(); + dataColumnList.dataColumn = dataColumnTypeList; + dataSourceType.setDataColumnList(dataColumnList); + list.add(dataSourceType); + dataSourceList.dataSource = list; + when(crType.getDataSourceList()).thenReturn(dataSourceList); + + when(Globals.getRequestParamtersMap(mockedRequest, false)).thenReturn(requestParams); + ds.set(0, "test"); + when(mockedRequest.getSession().getAttribute(AppConstants.RI_CHART_DATA)).thenReturn(ds); + when(rr.hasSeriesColumn()).thenReturn(true); + TreeMap values = new TreeMap<>(); + values.put("test", rr); + TreeMap values2 = new TreeMap<>(); + values2.put("test3", rd); + TreeMap values3 = new TreeMap<>(); + values3.put("test4", "c"); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTRUNTIME_MAP)).thenReturn(values); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTDATA_MAP)).thenReturn(values2); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_DISPLAYTYPE_MAP)).thenReturn(values3); + + Mockito.when(rr.getAllColumns()).thenReturn(dataColumnTypeList); + ArrayList chartValueColAxis = new ArrayList(); + chartValueColAxis.add("test"); + Mockito.when(rr.getChartValueColumnAxisList(Matchers.anyInt(), Matchers.any(HashMap.class))) + .thenReturn(chartValueColAxis); + pdfReportHandler.createPdfFileContent(mockedRequest, mockedResponse, 3); + } + + @Test + public void createPdfFileContent11Test() throws Exception { + PowerMockito.mockStatic(Image.class); + Document doc = mock(Document.class); + CustomReportType crType = mock(CustomReportType.class); + DataSet ds = mock(DataSet.class); + PowerMockito.whenNew(Document.class).withNoArguments().thenReturn(doc); + PowerMockito.when(doc.newPage()).thenReturn(true); + when(AppUtils.getUserID(mockedRequest)).thenReturn("test"); + ReportRuntime rr = mock(ReportRuntime.class); + ReportData rd = mock(ReportData.class); + when(Globals.isCoverPageNeeded()).thenReturn(true); + when(Globals.getSessionInfoForTheCoverPage()).thenReturn("test,test1"); + when(AppUtils.getRequestNvlValue(mockedRequest, "test1")).thenReturn("test1"); + when(rr.isPDFCoverPage()).thenReturn(true); + when(rr.getReportID()).thenReturn("test"); + when(rr.getPDFOrientation()).thenReturn("portait"); + when(AppUtils.getRequestNvlValue(mockedRequest, "chartOrientation")).thenReturn("vertical"); + when(AppUtils.getRequestNvlValue(mockedRequest, "secondaryChartRenderer")).thenReturn("test"); + when(AppUtils.getRequestNvlValue(mockedRequest, "chartDisplay")).thenReturn("3D"); + when(mockedRequest.getSession().getAttribute("report_runtime")).thenReturn(rr); + when(mockedRequest.getSession().getAttribute("dashboard_report_id")).thenReturn("test"); + ServletContext servConxt = mock(ServletContext.class); + when(mockedRequest.getSession().getServletContext()).thenReturn(servConxt); + when(servConxt.getRealPath(File.separator)).thenReturn("testpath"); + when(rr.getChartType()).thenReturn("BarChart3D"); + when(rr.getDisplayChart()).thenReturn(true); + ArrayList paramNamePDFValues = new ArrayList(); + paramNamePDFValues.add("test1"); + paramNamePDFValues.add("test2"); + when(rr.getParamNameValuePairsforPDFExcel(mockedRequest, 2)).thenReturn(paramNamePDFValues); + when(rr.getFormFieldComments(mockedRequest)).thenReturn("test"); + when(rr.getLegendPosition()).thenReturn("test"); + when(rr.hideChartToolTips()).thenReturn(true); + when(AppUtils.getRequestNvlValue(mockedRequest, "hideLegend")).thenReturn("Y"); + when(rr.getLegendLabelAngle()).thenReturn("test"); + when(rr.getMaxLabelsInDomainAxis()).thenReturn("test"); + when(rr.getRangeAxisLowerLimit()).thenReturn("10"); + when(rr.getRangeAxisUpperLimit()).thenReturn("10"); + when(AppUtils.getRequestNvlValue(mockedRequest, "totalOnChart")).thenReturn("Y"); + List chartGroups = new ArrayList<>(); + chartGroups.add("test"); + when(rr.getAllChartGroups()).thenReturn(chartGroups); + ReportParamValues reportValues = new ReportParamValues(); + when(rr.getReportParamValues()).thenReturn(reportValues); + when(rr.getFormFieldFilled(rr.getChartLeftAxisLabel())).thenReturn("test"); + when(rr.getFormFieldFilled(rr.getChartRightAxisLabel())).thenReturn("test"); + HashMap requestParams = new HashMap<>(); + requestParams.put("", "test"); + + DataSourceList dataSourceList = new DataSourceList(); + + List list = new ArrayList<>(); + DataSourceType dataSourceType = new DataSourceType(); + dataSourceType.setTableName("test"); + dataSourceType.setRefTableId("1"); + dataSourceType.setTableId("1"); + List dataColumnTypeList = new ArrayList<>(); + DataColumnType dataColumnType = new DataColumnType(); + dataColumnType.setChartGroup("test"); + dataColumnType.setYAxis("test"); + dataColumnType.setColName("[test"); + dataColumnType.setColOnChart("LEGEND"); + dataColumnType.setDisplayName("chart_total"); + dataColumnType.setColId("1"); + dataColumnType.setTableId("1"); + dataColumnType.setDependsOnFormField("test"); + dataColumnType.setColType("DATE"); + dataColumnType.setCrossTabValue("ROW"); + dataColumnType.setPdfDisplayWidthInPxls("0.0"); + dataColumnType.setVisible(true); + dataColumnType.setCalculated(true); + dataColumnType.setColType("chart_total"); + dataColumnTypeList.add(dataColumnType); + DataColumnType dataColumnType1 = new DataColumnType(); + dataColumnType1.setCrossTabValue("COLUMN"); + dataColumnType1.setColId("1"); + dataColumnType1.setVisible(true); + dataColumnType1.setPdfDisplayWidthInPxls("1.0"); + dataColumnTypeList.add(dataColumnType1); + + DataColumnList dataColumnList = new DataColumnList(); + dataColumnList.dataColumn = dataColumnTypeList; + dataSourceType.setDataColumnList(dataColumnList); + list.add(dataSourceType); + dataSourceList.dataSource = list; + when(crType.getDataSourceList()).thenReturn(dataSourceList); + + when(Globals.getRequestParamtersMap(mockedRequest, false)).thenReturn(requestParams); + ds.set(0, "test"); + when(mockedRequest.getSession().getAttribute(AppConstants.RI_CHART_DATA)).thenReturn(ds); + when(rr.hasSeriesColumn()).thenReturn(true); + TreeMap values = new TreeMap<>(); + values.put("test", rr); + TreeMap values2 = new TreeMap<>(); + values2.put("test3", rd); + TreeMap values3 = new TreeMap<>(); + values3.put("test4", "c"); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTRUNTIME_MAP)).thenReturn(values); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTDATA_MAP)).thenReturn(values2); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_DISPLAYTYPE_MAP)).thenReturn(values3); + + Mockito.when(rr.getAllColumns()).thenReturn(dataColumnTypeList); + ArrayList chartValueColAxis = new ArrayList(); + chartValueColAxis.add("test"); + Mockito.when(rr.getChartValueColumnAxisList(Matchers.anyInt(), Matchers.any(HashMap.class))) + .thenReturn(chartValueColAxis); + + pdfReportHandler.createPdfFileContent(mockedRequest, mockedResponse, 3); + } + + @Test + public void createPdfFileContent12Test() throws Exception { + PowerMockito.mockStatic(Image.class); + Document doc = mock(Document.class); + CustomReportType crType = mock(CustomReportType.class); + DataSet ds = mock(DataSet.class); + PowerMockito.whenNew(Document.class).withNoArguments().thenReturn(doc); + PowerMockito.when(doc.newPage()).thenReturn(true); + when(AppUtils.getUserID(mockedRequest)).thenReturn("test"); + ReportRuntime rr = mock(ReportRuntime.class); + ReportData rd = mock(ReportData.class); + when(Globals.isCoverPageNeeded()).thenReturn(true); + when(Globals.getSessionInfoForTheCoverPage()).thenReturn("test,test1"); + when(AppUtils.getRequestNvlValue(mockedRequest, "test1")).thenReturn("test1"); + when(rr.isPDFCoverPage()).thenReturn(true); + when(rr.getReportID()).thenReturn("test"); + when(rr.getPDFOrientation()).thenReturn("portait"); + when(AppUtils.getRequestNvlValue(mockedRequest, "chartOrientation")).thenReturn("vertical"); + when(AppUtils.getRequestNvlValue(mockedRequest, "secondaryChartRenderer")).thenReturn("test"); + when(AppUtils.getRequestNvlValue(mockedRequest, "chartDisplay")).thenReturn("3D"); + when(mockedRequest.getSession().getAttribute("report_runtime")).thenReturn(rr); + when(mockedRequest.getSession().getAttribute("dashboard_report_id")).thenReturn("test"); + ServletContext servConxt = mock(ServletContext.class); + when(mockedRequest.getSession().getServletContext()).thenReturn(servConxt); + when(servConxt.getRealPath(File.separator)).thenReturn("testpath"); + when(rr.getChartType()).thenReturn("BarChart3D"); + when(rr.getDisplayChart()).thenReturn(true); + ArrayList paramNamePDFValues = new ArrayList(); + paramNamePDFValues.add("test1"); + paramNamePDFValues.add("test2"); + when(rr.getParamNameValuePairsforPDFExcel(mockedRequest, 2)).thenReturn(paramNamePDFValues); + when(rr.getFormFieldComments(mockedRequest)).thenReturn("test"); + when(rr.getLegendPosition()).thenReturn("test"); + when(rr.hideChartToolTips()).thenReturn(true); + when(AppUtils.getRequestNvlValue(mockedRequest, "hideLegend")).thenReturn("Y"); + when(rr.getLegendLabelAngle()).thenReturn("test"); + when(rr.getMaxLabelsInDomainAxis()).thenReturn("test"); + when(rr.getRangeAxisLowerLimit()).thenReturn("10"); + when(rr.getRangeAxisUpperLimit()).thenReturn("10"); + when(AppUtils.getRequestNvlValue(mockedRequest, "totalOnChart")).thenReturn("Y"); + List chartGroups = new ArrayList<>(); + chartGroups.add("test|123"); + when(rr.getAllChartGroups()).thenReturn(chartGroups); + ReportParamValues reportValues = new ReportParamValues(); + when(rr.getReportParamValues()).thenReturn(reportValues); + when(rr.getFormFieldFilled(rr.getChartLeftAxisLabel())).thenReturn("test"); + when(rr.getFormFieldFilled(rr.getChartRightAxisLabel())).thenReturn("test"); + HashMap requestParams = new HashMap<>(); + requestParams.put("", "test"); + + DataSourceList dataSourceList = new DataSourceList(); + + List list = new ArrayList<>(); + DataSourceType dataSourceType = new DataSourceType(); + dataSourceType.setTableName("test"); + dataSourceType.setRefTableId("1"); + dataSourceType.setTableId("1"); + List dataColumnTypeList = new ArrayList<>(); + DataColumnType dataColumnType = new DataColumnType(); + dataColumnType.setChartGroup("test"); + dataColumnType.setYAxis("test"); + dataColumnType.setColName("chart_total"); + dataColumnType.setColOnChart("LEGEND"); + dataColumnType.setDisplayName("chart_total"); + dataColumnType.setColId("1"); + dataColumnType.setTableId("1"); + dataColumnType.setDependsOnFormField("test"); + dataColumnType.setColType("DATE"); + dataColumnType.setCrossTabValue("ROW"); + dataColumnType.setPdfDisplayWidthInPxls("0.0"); + dataColumnType.setVisible(true); + dataColumnType.setCalculated(true); + dataColumnType.setColType("chart_total"); + dataColumnTypeList.add(dataColumnType); + DataColumnType dataColumnType1 = new DataColumnType(); + dataColumnType1.setCrossTabValue("COLUMN"); + dataColumnType1.setColId("1"); + dataColumnType1.setVisible(true); + dataColumnType1.setPdfDisplayWidthInPxls("1.0"); + dataColumnTypeList.add(dataColumnType1); + + DataColumnList dataColumnList = new DataColumnList(); + dataColumnList.dataColumn = dataColumnTypeList; + dataSourceType.setDataColumnList(dataColumnList); + list.add(dataSourceType); + dataSourceList.dataSource = list; + when(crType.getDataSourceList()).thenReturn(dataSourceList); + + when(Globals.getRequestParamtersMap(mockedRequest, false)).thenReturn(requestParams); + ds.set(0, "test"); + when(mockedRequest.getSession().getAttribute(AppConstants.RI_CHART_DATA)).thenReturn(ds); + when(rr.hasSeriesColumn()).thenReturn(true); + TreeMap values = new TreeMap<>(); + values.put("test", rr); + TreeMap values2 = new TreeMap<>(); + values2.put("test3", rd); + TreeMap values3 = new TreeMap<>(); + values3.put("test4", "c"); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTRUNTIME_MAP)).thenReturn(values); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTDATA_MAP)).thenReturn(values2); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_DISPLAYTYPE_MAP)).thenReturn(values3); + + Mockito.when(rr.getAllColumns()).thenReturn(dataColumnTypeList); + ArrayList chartValueColAxis = new ArrayList(); + chartValueColAxis.add("test|123"); + Mockito.when(rr.getChartValueColumnAxisList(Matchers.anyInt(), Matchers.any(HashMap.class))) + .thenReturn(chartValueColAxis); + + pdfReportHandler.createPdfFileContent(mockedRequest, mockedResponse, 3); + } + + @Test(expected = java.lang.NullPointerException.class) + public void createPdfFileContent13Test() throws Exception { + PowerMockito.mockStatic(Image.class); + Document doc = mock(Document.class); + CustomReportType crType = mock(CustomReportType.class); + DataSet ds = mock(DataSet.class); + PowerMockito.whenNew(Document.class).withNoArguments().thenReturn(doc); + PowerMockito.when(doc.newPage()).thenReturn(true); + Rectangle rectangle = Mockito.mock(Rectangle.class); + Mockito.when(doc.getPageSize()).thenReturn(rectangle); + Mockito.when(rectangle.rotate()).thenReturn(rectangle); + when(AppUtils.getUserID(mockedRequest)).thenReturn("test"); + ReportRuntime rr = mock(ReportRuntime.class); + ReportData rd = mock(ReportData.class); + when(Globals.isCoverPageNeeded()).thenReturn(true); + when(Globals.getSessionInfoForTheCoverPage()).thenReturn("test,test1"); + when(AppUtils.getRequestNvlValue(mockedRequest, "test1")).thenReturn("test1"); + when(rr.isPDFCoverPage()).thenReturn(true); + when(rr.getReportID()).thenReturn("test"); + when(rr.getPDFOrientation()).thenReturn("portait"); + when(AppUtils.getRequestNvlValue(mockedRequest, "chartOrientation")).thenReturn("vertical"); + when(AppUtils.getRequestNvlValue(mockedRequest, "secondaryChartRenderer")).thenReturn("test"); + when(AppUtils.getRequestNvlValue(mockedRequest, "chartDisplay")).thenReturn("3D"); + when(mockedRequest.getSession().getAttribute("report_runtime")).thenReturn(rr); + when(mockedRequest.getSession().getAttribute("dashboard_report_id")).thenReturn("test"); + ServletContext servConxt = mock(ServletContext.class); + when(mockedRequest.getSession().getServletContext()).thenReturn(servConxt); + when(servConxt.getRealPath(File.separator)).thenReturn("testpath"); + when(rr.getChartType()).thenReturn(""); + when(rr.getDisplayChart()).thenReturn(true); + ArrayList paramNamePDFValues = new ArrayList(); + paramNamePDFValues.add("test1"); + paramNamePDFValues.add("test2"); + when(rr.getParamNameValuePairsforPDFExcel(mockedRequest, 2)).thenReturn(paramNamePDFValues); + when(rr.getFormFieldComments(mockedRequest)).thenReturn("test"); + when(rr.getLegendPosition()).thenReturn("test"); + when(rr.hideChartToolTips()).thenReturn(true); + when(AppUtils.getRequestNvlValue(mockedRequest, "hideLegend")).thenReturn("Y"); + when(rr.getLegendLabelAngle()).thenReturn("test"); + when(rr.getMaxLabelsInDomainAxis()).thenReturn("test"); + when(rr.getRangeAxisLowerLimit()).thenReturn("10"); + when(rr.getRangeAxisUpperLimit()).thenReturn("10"); + when(AppUtils.getRequestNvlValue(mockedRequest, "totalOnChart")).thenReturn("Y"); + List chartGroups = new ArrayList<>(); + chartGroups.add("test|123"); + when(rr.getAllChartGroups()).thenReturn(chartGroups); + ReportParamValues reportValues = new ReportParamValues(); + when(rr.getReportParamValues()).thenReturn(reportValues); + when(rr.getFormFieldFilled(rr.getChartLeftAxisLabel())).thenReturn("test"); + when(rr.getFormFieldFilled(rr.getChartRightAxisLabel())).thenReturn("test"); + HashMap requestParams = new HashMap<>(); + requestParams.put("", "test"); + + DataSourceList dataSourceList = new DataSourceList(); + + List list = new ArrayList<>(); + DataSourceType dataSourceType = new DataSourceType(); + dataSourceType.setTableName("test"); + dataSourceType.setRefTableId("1"); + dataSourceType.setTableId("1"); + List dataColumnTypeList = new ArrayList<>(); + DataColumnType dataColumnType = new DataColumnType(); + dataColumnType.setChartGroup("test"); + dataColumnType.setYAxis("test"); + dataColumnType.setColName("chart_total"); + dataColumnType.setColOnChart("LEGEND"); + dataColumnType.setDisplayName("chart_total"); + dataColumnType.setColId("1"); + dataColumnType.setTableId("1"); + dataColumnType.setDependsOnFormField("test"); + dataColumnType.setColType("DATE"); + dataColumnType.setCrossTabValue("ROW"); + dataColumnType.setPdfDisplayWidthInPxls("0.0"); + dataColumnType.setVisible(true); + dataColumnType.setCalculated(true); + dataColumnType.setColType("chart_total"); + dataColumnTypeList.add(dataColumnType); + DataColumnType dataColumnType1 = new DataColumnType(); + dataColumnType1.setCrossTabValue("COLUMN"); + dataColumnType1.setColId("1"); + dataColumnType1.setVisible(true); + dataColumnType1.setPdfDisplayWidthInPxls("1.0"); + dataColumnTypeList.add(dataColumnType1); + + DataColumnList dataColumnList = new DataColumnList(); + dataColumnList.dataColumn = dataColumnTypeList; + dataSourceType.setDataColumnList(dataColumnList); + list.add(dataSourceType); + dataSourceList.dataSource = list; + when(crType.getDataSourceList()).thenReturn(dataSourceList); + + when(Globals.getRequestParamtersMap(mockedRequest, false)).thenReturn(requestParams); + ds.set(0, "test"); + when(mockedRequest.getSession().getAttribute(AppConstants.RI_CHART_DATA)).thenReturn(ds); + when(rr.hasSeriesColumn()).thenReturn(true); + TreeMap values = new TreeMap<>(); + values.put("test", rr); + TreeMap values2 = new TreeMap<>(); + values2.put("test3", rd); + TreeMap values3 = new TreeMap<>(); + values3.put("test4", "c"); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTRUNTIME_MAP)).thenReturn(values); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTDATA_MAP)).thenReturn(values2); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_DISPLAYTYPE_MAP)).thenReturn(values3); + + Mockito.when(rr.getAllColumns()).thenReturn(dataColumnTypeList); + ArrayList chartValueColAxis = new ArrayList(); + chartValueColAxis.add("test|123"); + Mockito.when(rr.getChartValueColumnAxisList(Matchers.anyInt(), Matchers.any(HashMap.class))) + .thenReturn(chartValueColAxis); + Mockito.when(rr.getReportType()).thenReturn("Linear"); + + ReportDataRows reportDataRows = new ReportDataRows(); + DataRow dataRow1 = new DataRow(); + DataRow dataRow = new DataRow(); + DataRow dataRow2 = new DataRow(); + + ArrayList dataValueList = new ArrayList<>(); + DataValue value = new DataValue(); + value.setColId("test"); + value.setVisible(true); + value.setBold(true); + HtmlFormatter cfmt = new HtmlFormatter(); + value.setCellFormatter(cfmt); + DataValue value1 = new DataValue(); + HtmlFormatter cfmt1 = new HtmlFormatter(); + cfmt1.setBold(true); + cfmt1.setItalic(true); + cfmt1.setUnderline(true); + cfmt1.setFontColor("red"); + cfmt1.setFontSize("1.1"); + value1.setRowFormatter(cfmt1); + + DataValue value2 = new DataValue(); + value2.setColId("test"); + value2.setVisible(true); + value2.setBold(true); + dataValueList.add(value); + dataValueList.add(value1); + dataValueList.add(value2); + dataRow.addDataValue(value); + dataRow.addDataValue(value1); + dataRow.addDataValue(value2); + dataRow.setDataValueList(dataValueList); + + dataRow2.addDataValue(value); + dataRow2.addDataValue(value1); + dataRow2.addDataValue(value2); + dataRow2.setDataValueList(dataValueList); + + dataRow1.addDataValue(value); + dataRow1.addDataValue(value1); + dataRow1.addDataValue(value2); + dataRow1.setDataValueList(dataValueList); + + reportDataRows.addDataRow(dataRow1); + reportDataRows.add(dataRow1); + reportDataRows.addDataRow(dataRow2); + reportDataRows.add(dataRow2); + reportDataRows.addDataRow(dataRow); + reportDataRows.add(dataRow); + + rd.reportDataRows = reportDataRows; + + ReportColumnHeaderRows reportColumnHeaderRows = new ReportColumnHeaderRows(); + ColumnHeaderRow columnHeaderRow = new ColumnHeaderRow(); + ColumnHeader columnHeader = new ColumnHeader(); + columnHeaderRow.add(columnHeader); + ColumnHeader columnHeader1 = new ColumnHeader(); + columnHeader1.setRowSpan(1); + columnHeaderRow.add(columnHeader1); + reportColumnHeaderRows.add(columnHeaderRow); + rd.reportColumnHeaderRows = reportColumnHeaderRows; + + ReportRowHeaderCols reportRowHeaderCols = new ReportRowHeaderCols(); + RowHeaderCol rowHeaderCol = new RowHeaderCol(); + + RowHeader rowHeader = new RowHeader(); + RowHeader rowHeader1 = new RowHeader(); + RowHeader rowHeader2 = new RowHeader(); + + rowHeader.setBold(false); + rowHeader1.setBold(true); + rowHeaderCol.add(rowHeader); + rowHeaderCol.add(rowHeader1); + rowHeaderCol.add(rowHeader2); + + RowHeaderCol rowHeaderCol1 = new RowHeaderCol(); + + rowHeaderCol1.add(rowHeader); + rowHeaderCol1.add(rowHeader1); + rowHeaderCol1.add(rowHeader2); + + reportRowHeaderCols.addRowHeaderCol(rowHeaderCol); + + reportRowHeaderCols.addRowHeaderCol(rowHeaderCol1); + rd.reportRowHeaderCols = reportRowHeaderCols; + + PowerMockito.whenNew(ReportHandler.class).withNoArguments().thenReturn(reportHandler); + Mockito.when(reportHandler.loadReportDefinition(Matchers.any(HttpServletRequest.class), Matchers.anyString())) + .thenReturn(rdef); + Mockito.when(reportHandler.loadReportRuntime(Matchers.any(HttpServletRequest.class), Matchers.anyString(), + Matchers.anyBoolean(), Matchers.anyInt())).thenReturn(rr); + Mockito.when(rr.getPDFOrientation()).thenReturn("orientation"); + Mockito.when(rdef.getVisibleColumnCount()).thenReturn(1); + Mockito.when(Globals.getDataTableHeaderFontColor()).thenReturn("test"); + PowerMockito.mockStatic(Color.class); + Color color = new Color(1); + Mockito.when(Color.decode(Matchers.anyString())).thenReturn(color); + Mockito.when(Globals.getDataFontSizeOffset()).thenReturn((float) 1.0); + pdfReportHandler.createPdfFileContent(mockedRequest, mockedResponse, 3); + } + + @Test + public void createPdfFileContent14Test() throws Exception { + PowerMockito.mockStatic(Image.class); + Document doc = mock(Document.class); + CustomReportType crType = mock(CustomReportType.class); + DataSet ds = mock(DataSet.class); + PowerMockito.whenNew(Document.class).withNoArguments().thenReturn(doc); + PowerMockito.when(doc.newPage()).thenReturn(true); + Rectangle rectangle = Mockito.mock(Rectangle.class); + Mockito.when(doc.getPageSize()).thenReturn(rectangle); + Mockito.when(rectangle.rotate()).thenReturn(rectangle); + when(AppUtils.getUserID(mockedRequest)).thenReturn("test"); + ReportRuntime rr = mock(ReportRuntime.class); + ReportData rd = mock(ReportData.class); + when(Globals.isCoverPageNeeded()).thenReturn(true); + when(Globals.getSessionInfoForTheCoverPage()).thenReturn("test,test1"); + when(AppUtils.getRequestNvlValue(mockedRequest, "test1")).thenReturn("test1"); + when(rr.isPDFCoverPage()).thenReturn(true); + when(rr.getReportID()).thenReturn("test"); + when(rr.getPDFOrientation()).thenReturn("portait"); + when(AppUtils.getRequestNvlValue(mockedRequest, "chartOrientation")).thenReturn("vertical"); + when(AppUtils.getRequestNvlValue(mockedRequest, "secondaryChartRenderer")).thenReturn("test"); + when(AppUtils.getRequestNvlValue(mockedRequest, "chartDisplay")).thenReturn("3D"); + when(mockedRequest.getSession().getAttribute("report_runtime")).thenReturn(rr); + when(mockedRequest.getSession().getAttribute("dashboard_report_id")).thenReturn("test"); + ServletContext servConxt = mock(ServletContext.class); + when(mockedRequest.getSession().getServletContext()).thenReturn(servConxt); + when(servConxt.getRealPath(File.separator)).thenReturn("testpath"); + when(rr.getChartType()).thenReturn(""); + when(rr.getDisplayChart()).thenReturn(true); + ArrayList paramNamePDFValues = new ArrayList(); + paramNamePDFValues.add("test1"); + paramNamePDFValues.add("test2"); + when(rr.getParamNameValuePairsforPDFExcel(mockedRequest, 2)).thenReturn(paramNamePDFValues); + when(rr.getFormFieldComments(mockedRequest)).thenReturn("test"); + when(rr.getLegendPosition()).thenReturn("test"); + when(rr.hideChartToolTips()).thenReturn(true); + when(AppUtils.getRequestNvlValue(mockedRequest, "hideLegend")).thenReturn("Y"); + when(rr.getLegendLabelAngle()).thenReturn("test"); + when(rr.getMaxLabelsInDomainAxis()).thenReturn("test"); + when(rr.getRangeAxisLowerLimit()).thenReturn("10"); + when(rr.getRangeAxisUpperLimit()).thenReturn("10"); + when(AppUtils.getRequestNvlValue(mockedRequest, "totalOnChart")).thenReturn("Y"); + List chartGroups = new ArrayList<>(); + chartGroups.add("test|123"); + when(rr.getAllChartGroups()).thenReturn(chartGroups); + ReportParamValues reportValues = new ReportParamValues(); + when(rr.getReportParamValues()).thenReturn(reportValues); + when(rr.getFormFieldFilled(rr.getChartLeftAxisLabel())).thenReturn("test"); + when(rr.getFormFieldFilled(rr.getChartRightAxisLabel())).thenReturn("test"); + HashMap requestParams = new HashMap<>(); + requestParams.put("", "test"); + + DataSourceList dataSourceList = new DataSourceList(); + + List list = new ArrayList<>(); + DataSourceType dataSourceType = new DataSourceType(); + dataSourceType.setTableName("test"); + dataSourceType.setRefTableId("1"); + dataSourceType.setTableId("1"); + List dataColumnTypeList = new ArrayList<>(); + DataColumnType dataColumnType = new DataColumnType(); + dataColumnType.setChartGroup("test"); + dataColumnType.setYAxis("test"); + dataColumnType.setColName("chart_total"); + dataColumnType.setColOnChart("LEGEND"); + dataColumnType.setDisplayName("chart_total"); + dataColumnType.setColId("1"); + dataColumnType.setTableId("1"); + dataColumnType.setDependsOnFormField("test"); + dataColumnType.setColType("DATE"); + dataColumnType.setCrossTabValue("ROW"); + dataColumnType.setPdfDisplayWidthInPxls("0.0"); + dataColumnType.setVisible(true); + dataColumnType.setCalculated(true); + dataColumnType.setColType("chart_total"); + dataColumnTypeList.add(dataColumnType); + DataColumnType dataColumnType1 = new DataColumnType(); + dataColumnType1.setCrossTabValue("COLUMN"); + dataColumnType1.setColId("1"); + dataColumnType1.setVisible(true); + dataColumnType1.setPdfDisplayWidthInPxls("1.0"); + dataColumnTypeList.add(dataColumnType1); + + DataColumnList dataColumnList = new DataColumnList(); + dataColumnList.dataColumn = dataColumnTypeList; + dataSourceType.setDataColumnList(dataColumnList); + list.add(dataSourceType); + dataSourceList.dataSource = list; + when(crType.getDataSourceList()).thenReturn(dataSourceList); + + when(Globals.getRequestParamtersMap(mockedRequest, false)).thenReturn(requestParams); + ds.set(0, "test"); + when(mockedRequest.getSession().getAttribute(AppConstants.RI_CHART_DATA)).thenReturn(ds); + when(rr.hasSeriesColumn()).thenReturn(true); + TreeMap values = new TreeMap<>(); + values.put("test", rr); + TreeMap values2 = new TreeMap<>(); + values2.put("test3", rd); + TreeMap values3 = new TreeMap<>(); + values3.put("test4", "c"); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTRUNTIME_MAP)).thenReturn(values); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTDATA_MAP)).thenReturn(values2); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_DISPLAYTYPE_MAP)).thenReturn(values3); + + Mockito.when(rr.getAllColumns()).thenReturn(dataColumnTypeList); + ArrayList chartValueColAxis = new ArrayList(); + chartValueColAxis.add("test|123"); + Mockito.when(rr.getChartValueColumnAxisList(Matchers.anyInt(), Matchers.any(HashMap.class))) + .thenReturn(chartValueColAxis); + Mockito.when(rr.getReportType()).thenReturn("Linear"); + + ReportDataRows reportDataRows1 = new ReportDataRows(); + + rd.reportDataRows = reportDataRows1; + + ReportDataRows reportDataRows = new ReportDataRows(); + DataRow dataRow1 = new DataRow(); + DataRow dataRow = new DataRow(); + + DataValue value = new DataValue(); + DataValue value1 = new DataValue(); + dataRow1.addDataValue(value); + dataRow1.addDataValue(value1); + reportDataRows.addDataRow(dataRow1); + reportDataRows.add(dataRow1); + reportDataRows.addDataRow(dataRow); + reportDataRows.add(dataRow); + rd.reportDataTotalRow = reportDataRows; + + ReportColumnHeaderRows reportColumnHeaderRows = new ReportColumnHeaderRows(); + ColumnHeaderRow columnHeaderRow = new ColumnHeaderRow(); + ColumnHeader columnHeader = new ColumnHeader(); + columnHeaderRow.add(columnHeader); + ColumnHeader columnHeader1 = new ColumnHeader(); + columnHeader1.setRowSpan(1); + columnHeaderRow.add(columnHeader1); + reportColumnHeaderRows.add(columnHeaderRow); + rd.reportColumnHeaderRows = reportColumnHeaderRows; + + ReportRowHeaderCols reportRowHeaderCols = new ReportRowHeaderCols(); + RowHeaderCol rowHeaderCol = new RowHeaderCol(); + + RowHeader rowHeader = new RowHeader(); + RowHeader rowHeader1 = new RowHeader(); + RowHeader rowHeader2 = new RowHeader(); + + rowHeader.setBold(false); + rowHeader1.setBold(true); + rowHeaderCol.add(rowHeader); + rowHeaderCol.add(rowHeader1); + rowHeaderCol.add(rowHeader2); + + RowHeaderCol rowHeaderCol1 = new RowHeaderCol(); + + rowHeaderCol1.add(rowHeader); + rowHeaderCol1.add(rowHeader1); + rowHeaderCol1.add(rowHeader2); + + reportRowHeaderCols.addRowHeaderCol(rowHeaderCol); + + reportRowHeaderCols.addRowHeaderCol(rowHeaderCol1); + rd.reportRowHeaderCols = reportRowHeaderCols; + + PowerMockito.whenNew(ReportHandler.class).withNoArguments().thenReturn(reportHandler); + Mockito.when(reportHandler.loadReportDefinition(Matchers.any(HttpServletRequest.class), Matchers.anyString())) + .thenReturn(rdef); + Mockito.when(reportHandler.loadReportRuntime(Matchers.any(HttpServletRequest.class), Matchers.anyString(), + Matchers.anyBoolean(), Matchers.anyInt())).thenReturn(rr); + Mockito.when(rr.getPDFOrientation()).thenReturn("orientation"); + Mockito.when(rdef.getVisibleColumnCount()).thenReturn(1); + Mockito.when(Globals.getDataTableHeaderFontColor()).thenReturn("test"); + PowerMockito.mockStatic(Color.class); + Color color = new Color(1); + Mockito.when(Color.decode(Matchers.anyString())).thenReturn(color); + Mockito.when(Globals.getDataFontSizeOffset()).thenReturn((float) 1.0); + when(mockedRequest.getSession().getAttribute("FOOTER_0")).thenReturn("footer"); + pdfReportHandler.createPdfFileContent(mockedRequest, mockedResponse, 3); + } + + @Test + public void createPdfFileContent15Test() throws Exception { + PowerMockito.mockStatic(Image.class); + Document doc = mock(Document.class); + CustomReportType crType = mock(CustomReportType.class); + DataSet ds = mock(DataSet.class); + PowerMockito.whenNew(Document.class).withNoArguments().thenReturn(doc); + PowerMockito.when(doc.newPage()).thenReturn(true); + Rectangle rectangle = Mockito.mock(Rectangle.class); + Mockito.when(doc.getPageSize()).thenReturn(rectangle); + Mockito.when(rectangle.rotate()).thenReturn(rectangle); + when(AppUtils.getUserID(mockedRequest)).thenReturn("test"); + ReportRuntime rr = mock(ReportRuntime.class); + ReportData rd = mock(ReportData.class); + when(Globals.isCoverPageNeeded()).thenReturn(true); + when(Globals.getSessionInfoForTheCoverPage()).thenReturn("test,test1"); + when(AppUtils.getRequestNvlValue(mockedRequest, "test1")).thenReturn("test1"); + when(rr.isPDFCoverPage()).thenReturn(true); + when(rr.getReportID()).thenReturn("test"); + when(rr.getPDFOrientation()).thenReturn("portait"); + when(AppUtils.getRequestNvlValue(mockedRequest, "chartOrientation")).thenReturn("vertical"); + when(AppUtils.getRequestNvlValue(mockedRequest, "secondaryChartRenderer")).thenReturn("test"); + when(AppUtils.getRequestNvlValue(mockedRequest, "chartDisplay")).thenReturn("3D"); + when(mockedRequest.getSession().getAttribute("report_runtime")).thenReturn(rr); + when(mockedRequest.getSession().getAttribute("dashboard_report_id")).thenReturn("test"); + ServletContext servConxt = mock(ServletContext.class); + when(mockedRequest.getSession().getServletContext()).thenReturn(servConxt); + when(servConxt.getRealPath(File.separator)).thenReturn("testpath"); + when(rr.getChartType()).thenReturn(""); + when(rr.getDisplayChart()).thenReturn(true); + ArrayList paramNamePDFValues = new ArrayList(); + paramNamePDFValues.add("test1"); + paramNamePDFValues.add("test2"); + when(rr.getParamNameValuePairsforPDFExcel(mockedRequest, 2)).thenReturn(paramNamePDFValues); + when(rr.getFormFieldComments(mockedRequest)).thenReturn("test"); + when(rr.getLegendPosition()).thenReturn("test"); + when(rr.hideChartToolTips()).thenReturn(true); + when(AppUtils.getRequestNvlValue(mockedRequest, "hideLegend")).thenReturn("Y"); + when(rr.getLegendLabelAngle()).thenReturn("test"); + when(rr.getMaxLabelsInDomainAxis()).thenReturn("test"); + when(rr.getRangeAxisLowerLimit()).thenReturn("10"); + when(rr.getRangeAxisUpperLimit()).thenReturn("10"); + when(AppUtils.getRequestNvlValue(mockedRequest, "totalOnChart")).thenReturn("Y"); + List chartGroups = new ArrayList<>(); + chartGroups.add("test|123"); + when(rr.getAllChartGroups()).thenReturn(chartGroups); + ReportParamValues reportValues = new ReportParamValues(); + when(rr.getReportParamValues()).thenReturn(reportValues); + when(rr.getFormFieldFilled(rr.getChartLeftAxisLabel())).thenReturn("test"); + when(rr.getFormFieldFilled(rr.getChartRightAxisLabel())).thenReturn("test"); + HashMap requestParams = new HashMap<>(); + requestParams.put("", "test"); + + DataSourceList dataSourceList = new DataSourceList(); + + List list = new ArrayList<>(); + DataSourceType dataSourceType = new DataSourceType(); + dataSourceType.setTableName("test"); + dataSourceType.setRefTableId("1"); + dataSourceType.setTableId("1"); + List dataColumnTypeList = new ArrayList<>(); + DataColumnType dataColumnType = new DataColumnType(); + dataColumnType.setChartGroup("test"); + dataColumnType.setYAxis("test"); + dataColumnType.setColName("chart_total"); + dataColumnType.setColOnChart("LEGEND"); + dataColumnType.setDisplayName("chart_total"); + dataColumnType.setColId("1"); + dataColumnType.setTableId("1"); + dataColumnType.setDependsOnFormField("test"); + dataColumnType.setColType("DATE"); + dataColumnType.setCrossTabValue("ROW"); + dataColumnType.setPdfDisplayWidthInPxls("0.0"); + dataColumnType.setVisible(true); + dataColumnType.setCalculated(true); + dataColumnType.setColType("chart_total"); + dataColumnTypeList.add(dataColumnType); + DataColumnType dataColumnType1 = new DataColumnType(); + dataColumnType1.setCrossTabValue("COLUMN"); + dataColumnType1.setColId("1"); + dataColumnType1.setVisible(true); + dataColumnType1.setPdfDisplayWidthInPxls("1.0"); + dataColumnTypeList.add(dataColumnType1); + + DataColumnList dataColumnList = new DataColumnList(); + dataColumnList.dataColumn = dataColumnTypeList; + dataSourceType.setDataColumnList(dataColumnList); + list.add(dataSourceType); + dataSourceList.dataSource = list; + when(crType.getDataSourceList()).thenReturn(dataSourceList); + + when(Globals.getRequestParamtersMap(mockedRequest, false)).thenReturn(requestParams); + ds.set(0, "test"); + when(mockedRequest.getSession().getAttribute(AppConstants.RI_CHART_DATA)).thenReturn(ds); + when(rr.hasSeriesColumn()).thenReturn(true); + TreeMap values = new TreeMap<>(); + values.put("test", rr); + TreeMap values2 = new TreeMap<>(); + values2.put("test3", rd); + TreeMap values3 = new TreeMap<>(); + values3.put("test4", "c"); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTRUNTIME_MAP)).thenReturn(values); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTDATA_MAP)).thenReturn(values2); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_DISPLAYTYPE_MAP)).thenReturn(values3); + + Mockito.when(rr.getAllColumns()).thenReturn(dataColumnTypeList); + ArrayList chartValueColAxis = new ArrayList(); + chartValueColAxis.add("test|123"); + Mockito.when(rr.getChartValueColumnAxisList(Matchers.anyInt(), Matchers.any(HashMap.class))) + .thenReturn(chartValueColAxis); + Mockito.when(rr.getReportType()).thenReturn("Cross-Tab"); + + ReportDataRows reportDataRows1 = new ReportDataRows(); + + rd.reportDataRows = reportDataRows1; + + ReportDataRows reportDataRows = new ReportDataRows(); + DataRow dataRow1 = new DataRow(); + DataRow dataRow = new DataRow(); + + DataValue value = new DataValue(); + DataValue value1 = new DataValue(); + dataRow1.addDataValue(value); + dataRow1.addDataValue(value1); + reportDataRows.addDataRow(dataRow1); + reportDataRows.add(dataRow1); + reportDataRows.addDataRow(dataRow); + reportDataRows.add(dataRow); + rd.reportDataTotalRow = reportDataRows; + + ReportColumnHeaderRows reportColumnHeaderRows = new ReportColumnHeaderRows(); + ColumnHeaderRow columnHeaderRow = new ColumnHeaderRow(); + ColumnHeader columnHeader = new ColumnHeader(); + columnHeaderRow.add(columnHeader); + ColumnHeader columnHeader1 = new ColumnHeader(); + columnHeader1.setRowSpan(1); + columnHeaderRow.add(columnHeader1); + reportColumnHeaderRows.add(columnHeaderRow); + rd.reportColumnHeaderRows = reportColumnHeaderRows; + + ReportRowHeaderCols reportRowHeaderCols = new ReportRowHeaderCols(); + RowHeaderCol rowHeaderCol = new RowHeaderCol(); + + RowHeader rowHeader = new RowHeader(); + RowHeader rowHeader1 = new RowHeader(); + RowHeader rowHeader2 = new RowHeader(); + + rowHeader.setBold(false); + rowHeader1.setBold(true); + rowHeaderCol.add(rowHeader); + rowHeaderCol.add(rowHeader1); + rowHeaderCol.add(rowHeader2); + + RowHeaderCol rowHeaderCol1 = new RowHeaderCol(); + + rowHeaderCol1.add(rowHeader); + rowHeaderCol1.add(rowHeader1); + rowHeaderCol1.add(rowHeader2); + + reportRowHeaderCols.addRowHeaderCol(rowHeaderCol); + + reportRowHeaderCols.addRowHeaderCol(rowHeaderCol1); + rd.reportRowHeaderCols = reportRowHeaderCols; + + PowerMockito.whenNew(ReportHandler.class).withNoArguments().thenReturn(reportHandler); + Mockito.when(reportHandler.loadReportDefinition(Matchers.any(HttpServletRequest.class), Matchers.anyString())) + .thenReturn(rdef); + Mockito.when(reportHandler.loadReportRuntime(Matchers.any(HttpServletRequest.class), Matchers.anyString(), + Matchers.anyBoolean(), Matchers.anyInt())).thenReturn(rr); + Mockito.when(rr.getPDFOrientation()).thenReturn("orientation"); + Mockito.when(rdef.getVisibleColumnCount()).thenReturn(1); + Mockito.when(Globals.getDataTableHeaderFontColor()).thenReturn("test"); + PowerMockito.mockStatic(Color.class); + Color color = new Color(1); + Mockito.when(Color.decode(Matchers.anyString())).thenReturn(color); + Mockito.when(Globals.getDataFontSizeOffset()).thenReturn((float) 1.0); + when(mockedRequest.getSession().getAttribute("FOOTER_0")).thenReturn("footer"); + + List getReportDataList = new ArrayList<>(); + getReportDataList.add(dataRow); + getReportDataList.add(dataRow1); + Mockito.when(rd.getReportDataList()).thenReturn(getReportDataList); + + Vector rowValues = new Vector(); + rowValues.add(value1); + rowValues.add(value1); + + ArrayList dataValueList = new ArrayList<>(); + value.setColId("test"); + value.setVisible(true); + DataValue value2 = new DataValue(); + HtmlFormatter cfmt = new HtmlFormatter(); + value.setCellFormatter(cfmt); + + dataValueList.add(value); + dataValueList.add(value1); + dataValueList.add(value2); + dataRow.addDataValue(value); + dataRow.addDataValue(value1); + dataRow.addDataValue(value2); + dataRow.setDataValueList(dataValueList); + dataRow1.setDataValueList(dataValueList); + + dataRow.setRowValues(rowValues); + dataRow1.setRowValues(rowValues); + pdfReportHandler.createPdfFileContent(mockedRequest, mockedResponse, 3); + } + + @Test + public void createPdfFileContent_case15Test() throws Exception { + PowerMockito.mockStatic(Image.class); + Document doc = mock(Document.class); + CustomReportType crType = mock(CustomReportType.class); + + DataSet ds = mock(DataSet.class); + PowerMockito.whenNew(Document.class).withNoArguments().thenReturn(doc); + PowerMockito.when(doc.newPage()).thenReturn(true); + when(AppUtils.getUserID(mockedRequest)).thenReturn("test"); + ReportRuntime rr = mock(ReportRuntime.class); + ReportData rd = mock(ReportData.class); + + ReportDataRows reportDataRows = new ReportDataRows(); + DataRow dataRow1 = new DataRow(); + DataRow dataRow = new DataRow(); + DataValue value = new DataValue(); + DataValue value1 = new DataValue(); + dataRow1.addDataValue(value); + dataRow1.addDataValue(value1); + reportDataRows.addDataRow(dataRow1); + reportDataRows.add(dataRow1); + reportDataRows.addDataRow(dataRow); + reportDataRows.add(dataRow); + rd.reportDataRows = reportDataRows; + + ReportColumnHeaderRows reportColumnHeaderRows = new ReportColumnHeaderRows(); + ColumnHeaderRow columnHeaderRow = new ColumnHeaderRow(); + ColumnHeader columnHeader = new ColumnHeader(); + columnHeaderRow.add(columnHeader); + ColumnHeader columnHeader1 = new ColumnHeader(); + columnHeader1.setRowSpan(1); + columnHeaderRow.add(columnHeader1); + reportColumnHeaderRows.add(columnHeaderRow); + rd.reportColumnHeaderRows = reportColumnHeaderRows; + + ReportRowHeaderCols reportRowHeaderCols = new ReportRowHeaderCols(); + RowHeaderCol rowHeaderCol = new RowHeaderCol(); + rowHeaderCol.add("test"); + RowHeaderCol rowHeaderCol1 = new RowHeaderCol(); + rowHeaderCol1.add("test1"); + reportRowHeaderCols.addRowHeaderCol(rowHeaderCol); + reportRowHeaderCols.addRowHeaderCol(rowHeaderCol1); + rd.reportRowHeaderCols = reportRowHeaderCols; + + ReportDataRows rdr = new ReportDataRows(); + Connection conn = mock(Connection.class); + Statement st = mock(Statement.class); + ResultSet resSet = mock(ResultSet.class); + ResultSetMetaData resSetMD = mock(ResultSetMetaData.class); + DataRow dr = new DataRow(); + rdr.add(dr); + rd.reportDataRows = rdr; + when(Globals.isCoverPageNeeded()).thenReturn(true); + when(Globals.getSessionInfoForTheCoverPage()).thenReturn("test,test1"); + when(AppUtils.getRequestNvlValue(mockedRequest, "test1")).thenReturn("test1"); + when(rr.isPDFCoverPage()).thenReturn(true); + when(rr.getReportID()).thenReturn("test"); + when(rr.getPDFOrientation()).thenReturn("portait"); + when(AppUtils.getRequestNvlValue(mockedRequest, "multiplePieOrder")).thenReturn("row"); + when(AppUtils.getRequestNvlValue(mockedRequest, "multiplePieLabelDisplay")).thenReturn("test"); + when(AppUtils.getRequestNvlValue(mockedRequest, "chartDisplay")).thenReturn("3D"); + when(mockedRequest.getSession().getAttribute("report_runtime")).thenReturn(rr); + when(mockedRequest.getSession().getAttribute("dashboard_report_id")).thenReturn("test"); + ServletContext servConxt = mock(ServletContext.class); + when(mockedRequest.getSession().getServletContext()).thenReturn(servConxt); + when(servConxt.getRealPath(File.separator)).thenReturn("testpath"); + when(rr.getChartType()).thenReturn(AppConstants.GT_PIE_MULTIPLE); + when(rr.getDisplayChart()).thenReturn(true); + ArrayList paramNamePDFValues = new ArrayList(); + paramNamePDFValues.add("test1"); + paramNamePDFValues.add("test2"); + when(rr.getParamNameValuePairsforPDFExcel(mockedRequest, 2)).thenReturn(paramNamePDFValues); + when(rr.getFormFieldComments(mockedRequest)).thenReturn("test"); + when(rr.getLegendPosition()).thenReturn("test"); + when(rr.hideChartToolTips()).thenReturn(true); + when(AppUtils.getRequestNvlValue(mockedRequest, "hideLegend")).thenReturn("Y"); + when(rr.getLegendLabelAngle()).thenReturn("test"); + when(rr.getMaxLabelsInDomainAxis()).thenReturn("test"); + when(rr.getRangeAxisLowerLimit()).thenReturn("10"); + when(rr.getRangeAxisUpperLimit()).thenReturn("10"); + when(AppUtils.getRequestNvlValue(mockedRequest, "totalOnChart")).thenReturn("Y"); + List chartGroups = new ArrayList<>(); + when(rr.getAllChartGroups()).thenReturn(chartGroups); + ReportParamValues reportValues = new ReportParamValues(); + when(rr.getReportParamValues()).thenReturn(reportValues); + when(rr.getFormFieldFilled(rr.getChartLeftAxisLabel())).thenReturn("test"); + when(rr.getFormFieldFilled(rr.getChartRightAxisLabel())).thenReturn("test"); + HashMap requestParams = new HashMap<>(); + requestParams.put("", "test"); + + DataSourceList dataSourceList = new DataSourceList(); + + when(crType.getDataSourceList()).thenReturn(dataSourceList); + + when(Globals.getRequestParamtersMap(mockedRequest, false)).thenReturn(requestParams); + ds.set(0, "test"); + when(mockedRequest.getSession().getAttribute(AppConstants.RI_CHART_DATA)).thenReturn(ds); + when(rr.hasSeriesColumn()).thenReturn(true); + TreeMap values = new TreeMap<>(); + values.put("test", rr); + TreeMap values2 = new TreeMap<>(); + values2.put("test3", rd); + TreeMap values3 = new TreeMap<>(); + values3.put("test4", "c"); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTRUNTIME_MAP)).thenReturn(values); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTDATA_MAP)).thenReturn(values2); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_DISPLAYTYPE_MAP)).thenReturn(values3); + Mockito.when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REP_ID)).thenReturn("test123"); + List newlist = new ArrayList<>(); + newlist.add(1); + Mockito.when(mockedRequest.getSession().getAttribute(AppConstants.SI_FORMFIELD_DOWNLOAD_INFO)) + .thenReturn(newlist); + when(mockedRequest.getSession().getAttribute(AppConstants.RI_REPORT_DATA)).thenReturn(rd); + Mockito.when(rr.getReportType()).thenReturn("Linear"); + Mockito.when(rd.getTotalColumnCount()).thenReturn(2); + PowerMockito.whenNew(ReportHandler.class).withNoArguments().thenReturn(reportHandler); + Mockito.when(reportHandler.loadReportDefinition(Matchers.any(HttpServletRequest.class), Matchers.anyString())) + .thenReturn(rdef); + Mockito.when(rdef.getVisibleColumnCount()).thenReturn(2); + + List dataColumnTypeList = mockDataList(); + List dataColumnTypeList1 = new ArrayList<>(); + Mockito.when(rdef.getAllColumns()).thenReturn(dataColumnTypeList); + Mockito.when(Globals.getDataTableHeaderFontColor()).thenReturn("test"); + PowerMockito.mockStatic(Color.class); + Color color = new Color(1); + Mockito.when(Color.decode(Matchers.anyString())).thenReturn(color); + when(mockedRequest.getSession().getAttribute("TITLE_0")).thenReturn("title"); + when(mockedRequest.getSession().getAttribute("drilldown_index")).thenReturn("drilldown_index"); + when(mockedRequest.getSession().getAttribute("SUBTITLE_0")).thenReturn("subtitle"); + Mockito.when(mockedRequest.getAttribute(AppConstants.RI_REPORT_SQL_WHOLE)).thenReturn("test"); + PowerMockito.mockStatic(ConnectionUtils.class); + + Mockito.when(ConnectionUtils.getConnection(Matchers.anyString())).thenReturn(conn); + Mockito.when(conn.createStatement()).thenReturn(st); + Mockito.when(st.executeQuery(Matchers.anyString())).thenReturn(resSet); + Mockito.when(resSet.getMetaData()).thenReturn(resSetMD); + Mockito.when(resSetMD.getColumnCount()).thenReturn(2); + Mockito.when(resSet.next()).thenReturn(false); + + rd.reportDataTotalRow = reportDataRows; + pdfReportHandler.createPdfFileContent(mockedRequest, mockedResponse, 3); + } + + @Test + public void currentTimeTest() { + PowerMockito.mockStatic(Globals.class); + Mockito.when(Globals.getTimeZone()).thenReturn("EST"); + pdfReportHandler.currentTime("11/11/2011 11:11:11"); + } + + public List mockDataList() { + List dataColumnTypeList = new ArrayList<>(); + DataColumnType dataColumnType = new DataColumnType(); + dataColumnType.setChartGroup("test"); + dataColumnType.setYAxis("test"); + dataColumnType.setColName("[test"); + dataColumnType.setColOnChart("LEGEND"); + dataColumnType.setDisplayName("chart_total"); + dataColumnType.setColId("1"); + dataColumnType.setTableId("1"); + dataColumnType.setColType("DATE"); + dataColumnType.setCrossTabValue("ROW"); + dataColumnType.setPdfDisplayWidthInPxls("0.0"); + dataColumnType.setVisible(true); + dataColumnType.setCalculated(true); + dataColumnTypeList.add(dataColumnType); + DataColumnType dataColumnType1 = new DataColumnType(); + dataColumnType1.setCrossTabValue("COLUMN"); + dataColumnType1.setColId("1"); + dataColumnType1.setVisible(true); + dataColumnType1.setPdfDisplayWidthInPxls("1.0"); + return dataColumnTypeList; + } + + + + @Test(expected = java.lang.NullPointerException.class) + public void createPdfFileContent17Test() throws Exception { + PowerMockito.mockStatic(Image.class); + Document doc = mock(Document.class); + CustomReportType crType = mock(CustomReportType.class); + DataSet ds = mock(DataSet.class); + PowerMockito.whenNew(Document.class).withNoArguments().thenReturn(doc); + PowerMockito.when(doc.newPage()).thenReturn(true); + Rectangle rectangle = Mockito.mock(Rectangle.class); + Mockito.when(doc.getPageSize()).thenReturn(rectangle); + Mockito.when(rectangle.rotate()).thenReturn(rectangle); + when(AppUtils.getUserID(mockedRequest)).thenReturn("test"); + ReportRuntime rr = mock(ReportRuntime.class); + ReportData rd = mock(ReportData.class); + when(Globals.isCoverPageNeeded()).thenReturn(true); + when(Globals.getSessionInfoForTheCoverPage()).thenReturn("test,test1"); + when(AppUtils.getRequestNvlValue(mockedRequest, "test1")).thenReturn("test1"); + when(rr.isPDFCoverPage()).thenReturn(true); + when(rr.getReportID()).thenReturn("test"); + when(rr.getPDFOrientation()).thenReturn("portait"); + when(AppUtils.getRequestNvlValue(mockedRequest, "chartOrientation")).thenReturn("vertical"); + when(AppUtils.getRequestNvlValue(mockedRequest, "secondaryChartRenderer")).thenReturn("test"); + when(AppUtils.getRequestNvlValue(mockedRequest, "chartDisplay")).thenReturn("3D"); + when(mockedRequest.getSession().getAttribute("report_runtime")).thenReturn(rr); + when(mockedRequest.getSession().getAttribute("dashboard_report_id")).thenReturn("test123"); + ServletContext servConxt = mock(ServletContext.class); + when(mockedRequest.getSession().getServletContext()).thenReturn(servConxt); + when(servConxt.getRealPath(File.separator)).thenReturn("testpath"); + when(rr.getChartType()).thenReturn(""); + when(rr.getDisplayChart()).thenReturn(true); + ArrayList paramNamePDFValues = new ArrayList(); + paramNamePDFValues.add("test1"); + paramNamePDFValues.add("test2"); + when(rr.getParamNameValuePairsforPDFExcel(mockedRequest, 2)).thenReturn(paramNamePDFValues); + when(rr.getFormFieldComments(mockedRequest)).thenReturn("test"); + when(rr.getLegendPosition()).thenReturn("test"); + when(rr.hideChartToolTips()).thenReturn(true); + when(AppUtils.getRequestNvlValue(mockedRequest, "hideLegend")).thenReturn("Y"); + when(rr.getLegendLabelAngle()).thenReturn("test"); + when(rr.getMaxLabelsInDomainAxis()).thenReturn("test"); + when(rr.getRangeAxisLowerLimit()).thenReturn("10"); + when(rr.getRangeAxisUpperLimit()).thenReturn("10"); + when(AppUtils.getRequestNvlValue(mockedRequest, "totalOnChart")).thenReturn("Y"); + List chartGroups = new ArrayList<>(); + chartGroups.add("test|123"); + when(rr.getAllChartGroups()).thenReturn(chartGroups); + ReportParamValues reportValues = new ReportParamValues(); + when(rr.getReportParamValues()).thenReturn(reportValues); + when(rr.getFormFieldFilled(rr.getChartLeftAxisLabel())).thenReturn("test"); + when(rr.getFormFieldFilled(rr.getChartRightAxisLabel())).thenReturn("test"); + HashMap requestParams = new HashMap<>(); + requestParams.put("", "test"); + + DataSourceList dataSourceList = new DataSourceList(); + + List list = new ArrayList<>(); + DataSourceType dataSourceType = new DataSourceType(); + dataSourceType.setTableName("test"); + dataSourceType.setRefTableId("1"); + dataSourceType.setTableId("1"); + List dataColumnTypeList = new ArrayList<>(); + DataColumnType dataColumnType = new DataColumnType(); + dataColumnType.setChartGroup("test"); + dataColumnType.setYAxis("test"); + dataColumnType.setColName("chart_total"); + dataColumnType.setColOnChart("LEGEND"); + dataColumnType.setDisplayName("chart_total"); + dataColumnType.setColId("1"); + dataColumnType.setTableId("1"); + dataColumnType.setDependsOnFormField("test"); + dataColumnType.setColType("DATE"); + dataColumnType.setCrossTabValue("ROW"); + dataColumnType.setPdfDisplayWidthInPxls("0.0"); + dataColumnType.setVisible(true); + dataColumnType.setCalculated(true); + dataColumnType.setColType("chart_total"); + dataColumnTypeList.add(dataColumnType); + DataColumnType dataColumnType1 = new DataColumnType(); + dataColumnType1.setCrossTabValue("COLUMN"); + dataColumnType1.setColId("1"); + dataColumnType1.setVisible(true); + dataColumnType1.setPdfDisplayWidthInPxls("1.0"); + dataColumnTypeList.add(dataColumnType1); + + DataColumnList dataColumnList = new DataColumnList(); + dataColumnList.dataColumn = dataColumnTypeList; + dataSourceType.setDataColumnList(dataColumnList); + list.add(dataSourceType); + dataSourceList.dataSource = list; + when(crType.getDataSourceList()).thenReturn(dataSourceList); + + when(Globals.getRequestParamtersMap(mockedRequest, false)).thenReturn(requestParams); + ds.set(0, "test"); + when(mockedRequest.getSession().getAttribute(AppConstants.RI_CHART_DATA)).thenReturn(ds); + when(rr.hasSeriesColumn()).thenReturn(true); + TreeMap values = new TreeMap<>(); + values.put("test", rr); + TreeMap values2 = new TreeMap<>(); + values2.put("test3", rd); + TreeMap values3 = new TreeMap<>(); + values3.put("test4", "c"); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTRUNTIME_MAP)).thenReturn(values); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_REPORTDATA_MAP)).thenReturn(values2); + when(mockedRequest.getSession().getAttribute(AppConstants.SI_DASHBOARD_DISPLAYTYPE_MAP)).thenReturn(values3); + + Mockito.when(rr.getAllColumns()).thenReturn(dataColumnTypeList); + ArrayList chartValueColAxis = new ArrayList(); + chartValueColAxis.add("test|123"); + Mockito.when(rr.getChartValueColumnAxisList(Matchers.anyInt(), Matchers.any(HashMap.class))) + .thenReturn(chartValueColAxis); + Mockito.when(rr.getReportType()).thenReturn("Linear"); + + + + ReportDataRows reportDataRows = new ReportDataRows(); + DataRow dataRow1 = new DataRow(); + DataRow dataRow = new DataRow(); + + DataValue value = new DataValue(); + DataValue value1 = new DataValue(); + dataRow1.addDataValue(value); + dataRow1.addDataValue(value1); + reportDataRows.addDataRow(dataRow1); + reportDataRows.add(dataRow1); + reportDataRows.addDataRow(dataRow); + reportDataRows.add(dataRow); + rd.reportDataTotalRow = reportDataRows; + rd.reportDataRows = reportDataRows; + + ReportColumnHeaderRows reportColumnHeaderRows = new ReportColumnHeaderRows(); + ColumnHeaderRow columnHeaderRow = new ColumnHeaderRow(); + ColumnHeader columnHeader = new ColumnHeader(); + columnHeaderRow.add(columnHeader); + ColumnHeader columnHeader1 = new ColumnHeader(); + columnHeader1.setRowSpan(1); + columnHeaderRow.add(columnHeader1); + reportColumnHeaderRows.add(columnHeaderRow); + rd.reportColumnHeaderRows = reportColumnHeaderRows; + + ReportRowHeaderCols reportRowHeaderCols = new ReportRowHeaderCols(); + RowHeaderCol rowHeaderCol = new RowHeaderCol(); + + RowHeader rowHeader = new RowHeader(); + RowHeader rowHeader1 = new RowHeader(); + RowHeader rowHeader2 = new RowHeader(); + + rowHeader.setBold(false); + rowHeader1.setBold(true); + rowHeaderCol.add(rowHeader); + rowHeaderCol.add(rowHeader1); + rowHeaderCol.add(rowHeader2); + + RowHeaderCol rowHeaderCol1 = new RowHeaderCol(); + + rowHeaderCol1.add(rowHeader); + rowHeaderCol1.add(rowHeader1); + rowHeaderCol1.add(rowHeader2); + + reportRowHeaderCols.addRowHeaderCol(rowHeaderCol); + + reportRowHeaderCols.addRowHeaderCol(rowHeaderCol1); + rd.reportRowHeaderCols = reportRowHeaderCols; + + PowerMockito.whenNew(ReportHandler.class).withNoArguments().thenReturn(reportHandler); + Mockito.when(reportHandler.loadReportDefinition(Matchers.any(HttpServletRequest.class), Matchers.anyString())) + .thenReturn(rdef); + Mockito.when(reportHandler.loadReportRuntime(Matchers.any(HttpServletRequest.class), Matchers.anyString(), + Matchers.anyBoolean(), Matchers.anyInt())).thenReturn(rr); + Mockito.when(rr.getPDFOrientation()).thenReturn("orientation"); + Mockito.when(rdef.getVisibleColumnCount()).thenReturn(1); + Mockito.when(Globals.getDataTableHeaderFontColor()).thenReturn("test"); + PowerMockito.mockStatic(Color.class); + Color color = new Color(1); + Mockito.when(Color.decode(Matchers.anyString())).thenReturn(color); + Mockito.when(Globals.getDataFontSizeOffset()).thenReturn((float) 1.0); + when(mockedRequest.getSession().getAttribute("FOOTER_0")).thenReturn("footer"); + List newlist = new ArrayList<>(); + newlist.add(1); + Mockito.when(mockedRequest.getSession().getAttribute(AppConstants.SI_FORMFIELD_DOWNLOAD_INFO)) + .thenReturn(newlist); + Mockito.when(rd.getTotalColumnCount()).thenReturn(2); + pdfReportHandler.createPdfFileContent(mockedRequest, mockedResponse, 2); + } + + } -- cgit 1.2.3-korg