/* * ============LICENSE_START========================================== * ONAP Portal SDK * =================================================================== * Copyright © 2017 AT&T Intellectual Property. All rights reserved. * =================================================================== * * Unless otherwise specified, all software contained herein is licensed * under the Apache License, Version 2.0 (the "License"); * you may not use this software except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * * Unless otherwise specified, all documentation contained herein is licensed * under the Creative Commons License, Attribution 4.0 Intl. (the "License"); * you may not use this documentation except in compliance with the License. * You may obtain a copy of the License at * * https://creativecommons.org/licenses/by/4.0/ * * Unless required by applicable law or agreed to in writing, documentation * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * * ============LICENSE_END============================================ * * */ package org.onap.portalsdk.analytics.xmlobj; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; import java.awt.Color; import java.awt.Font; import java.io.File; import java.sql.Connection; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.sql.Statement; 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; import javax.servlet.http.HttpServletResponse; import org.junit.Before; import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; 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; import org.onap.portalsdk.analytics.model.pdf.PdfReportHandler; import org.onap.portalsdk.analytics.model.runtime.ReportParamValues; import org.onap.portalsdk.analytics.model.runtime.ReportRuntime; import org.onap.portalsdk.analytics.system.AppUtils; import org.onap.portalsdk.analytics.system.ConnectionUtils; import org.onap.portalsdk.analytics.system.DbUtils; import org.onap.portalsdk.analytics.system.Globals; import org.onap.portalsdk.analytics.util.AppConstants; import org.onap.portalsdk.analytics.util.DataSet; import org.onap.portalsdk.analytics.util.HtmlStripper; import org.onap.portalsdk.analytics.util.Utils; 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; import org.onap.portalsdk.analytics.view.ReportRowHeaderCols; import org.onap.portalsdk.analytics.view.RowHeader; import org.onap.portalsdk.analytics.view.RowHeaderCol; import org.onap.portalsdk.core.util.SecurityCodecUtil; import org.onap.portalsdk.core.web.support.UserUtils; import org.owasp.esapi.ESAPI; import org.owasp.esapi.codecs.Codec; import org.powermock.api.mockito.PowerMockito; import org.powermock.core.classloader.annotations.PrepareForTest; 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, Color.class }) public class PdfReportHandlerTest { PdfReportHandler pdfReportHandler = new PdfReportHandler(); @Mock ReportHandler reportHandler; @Mock ReportDefinition rdef; @Before public void init() throws Exception { PowerMockito.mockStatic(Globals.class); PowerMockito.mockStatic(AppUtils.class); PowerMockito.mockStatic(DbUtils.class); MockitoAnnotations.initMocks(this); } MockitoTestSuite mockitoTestSuite = new MockitoTestSuite(); HttpServletRequest mockedRequest = mockitoTestSuite.getMockedRequest(); HttpServletResponse mockedResponse = mockitoTestSuite.getMockedResponse(); @Ignore @SuppressWarnings({ "rawtypes", "unchecked" }) @Test public void createPdfFileContentTest() throws Exception { Document doc = mock(Document.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(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("test"); 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"); 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); pdfReportHandler.createPdfFileContent(mockedRequest, mockedResponse, 3); } @Ignore @SuppressWarnings({ "rawtypes", "unchecked" }) @Test public void createPdfFileContentIfNotDashBoardTest() throws Exception { PowerMockito.mockStatic(Color.class); PowerMockito.mockStatic(AppConstants.class); PowerMockito.mockStatic(Globals.class); PowerMockito.mockStatic(DbUtils.class); PowerMockito.mockStatic(ConnectionUtils.class); ReportRuntime rr = mock(ReportRuntime.class); ReportData rd = mock(ReportData.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); ResultSetMetaData resSetMD = mock(ResultSetMetaData.class); DataRow dr = new DataRow(); rdr.add(dr); rd.reportDataRows = rdr; when(rr.getCustomReport()).thenReturn(crType); when(rr.getReportDefType()).thenReturn(AppConstants.RD_SQL_BASED); when(crType.getReportType()).thenReturn("Linear"); when(Globals.getDataTableHeaderFontColor()).thenReturn("black"); 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.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(ConnectionUtils.getConnection(Matchers.anyString())).thenReturn(conn); when(conn.createStatement()).thenReturn(st); 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); when(mockedRequest.getSession().getAttribute(AppConstants.SI_REPORT_RUNTIME)).thenReturn(rr); when(mockedRequest.getSession().getAttribute(AppConstants.RI_REPORT_DATA)).thenReturn(rd); when(mockedRequest.getAttribute(AppConstants.RI_REPORT_SQL_WHOLE)).thenReturn("test_sql_whole"); when(rd.getTotalColumnCount()).thenReturn(2); ReportColumnHeaderRows reportColumnHeaderRows = new ReportColumnHeaderRows(); ColumnHeaderRow columnHeaderRow = new ColumnHeaderRow(); ColumnHeader columnHeader = new ColumnHeader(); columnHeaderRow.add(columnHeader); reportColumnHeaderRows.add(columnHeaderRow); rd.reportColumnHeaderRows = reportColumnHeaderRows; ReportRowHeaderCols reportRowHeaderCols = new ReportRowHeaderCols(); RowHeaderCol rowHeaderCol = new RowHeaderCol(); RowHeader rowHeader = new RowHeader(); rowHeader.setRowTitle("test"); rowHeaderCol.add(rowHeader); RowHeaderCol rowHeaderCol1 = new RowHeaderCol(); RowHeader rowHeader1 = new RowHeader(); rowHeader1.setRowTitle("test1"); rowHeaderCol1.add(rowHeader1); reportRowHeaderCols.addRowHeaderCol(rowHeaderCol); reportRowHeaderCols.addRowHeaderCol(rowHeaderCol1); 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); 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); PowerMockito.whenNew(Document.class).withNoArguments().thenReturn(doc); PowerMockito.when(doc.newPage()).thenReturn(true); when(AppUtils.getUserID(mockedRequest)).thenReturn("test"); 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(rr.getReportType()).thenReturn(AppConstants.RT_LINEAR); ServletContext servConxt = mock(ServletContext.class); when(mockedRequest.getSession().getServletContext()).thenReturn(servConxt); when(servConxt.getRealPath(File.separator)).thenReturn("testpath"); when(rr.getChartType()).thenReturn("test"); when(rr.getDisplayChart()).thenReturn(true); ArrayList paramNamePDFValues = new ArrayList(); paramNamePDFValues.add("test1"); paramNamePDFValues.add("test2"); when(rr.getParamNameValuePairsforPDFExcel(mockedRequest, 1)).thenReturn(paramNamePDFValues); when(rr.getFormFieldComments(mockedRequest)).thenReturn("test"); 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); pdfReportHandler.createPdfFileContent(mockedRequest, mockedResponse, 3); } @Ignore @SuppressWarnings({ "rawtypes", "unchecked" }) @Test public void createPdfFileContentIfNotDashBoardAndTypeTwoTest() throws Exception { PowerMockito.mockStatic(Color.class); PowerMockito.mockStatic(AppConstants.class); PowerMockito.mockStatic(Globals.class); PowerMockito.mockStatic(DbUtils.class); PowerMockito.mockStatic(Font.class); PowerMockito.mockStatic(ConnectionUtils.class); HtmlStripper htmlStr = mock(HtmlStripper.class); PowerMockito.whenNew(HtmlStripper.class).withNoArguments().thenReturn(htmlStr); 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); 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(rr.getCustomReport()).thenReturn(crType); when(rr.getReportDefType()).thenReturn(AppConstants.RD_SQL_BASED); when(crType.getReportType()).thenReturn("Linear"); when(Globals.getDataTableHeaderFontColor()).thenReturn("black"); 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.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(ConnectionUtils.getConnection(Matchers.anyString())).thenReturn(conn); when(conn.createStatement()).thenReturn(st); 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); when(mockedRequest.getSession().getAttribute(AppConstants.SI_REPORT_RUNTIME)).thenReturn(rr); when(mockedRequest.getSession().getAttribute(AppConstants.RI_REPORT_DATA)).thenReturn(rd); when(mockedRequest.getAttribute(AppConstants.RI_REPORT_SQL_WHOLE)).thenReturn("test_sql_whole"); when(rd.getTotalColumnCount()).thenReturn(2); ReportColumnHeaderRows reportColumnHeaderRows = new ReportColumnHeaderRows(); ColumnHeaderRow columnHeaderRow = new ColumnHeaderRow(); ColumnHeader columnHeader = new ColumnHeader(); 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); 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); PowerMockito.whenNew(Document.class).withNoArguments().thenReturn(doc); PowerMockito.when(doc.newPage()).thenReturn(true); when(AppUtils.getUserID(mockedRequest)).thenReturn("test"); 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(rr.getReportType()).thenReturn(AppConstants.RT_LINEAR); ServletContext servConxt = mock(ServletContext.class); when(mockedRequest.getSession().getServletContext()).thenReturn(servConxt); when(servConxt.getRealPath(File.separator)).thenReturn("testpath"); when(rr.getChartType()).thenReturn("test"); when(rr.getDisplayChart()).thenReturn(true); ArrayList paramNamePDFValues = new ArrayList(); paramNamePDFValues.add("test1"); paramNamePDFValues.add("test2"); when(rr.getParamNameValuePairsforPDFExcel(mockedRequest, 1)).thenReturn(paramNamePDFValues); when(rr.getFormFieldComments(mockedRequest)).thenReturn("test"); 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); 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); 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, "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(); 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); 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); } }