+ }
+
+ @Test
+ public void testRename() {
+ PolicyManagerServlet servlet = new PolicyManagerServlet();
+ PolicyController controller = mock(PolicyController.class);
+ List<BufferedReader> readers = new ArrayList<>();
+ when(controller.getEntityItem(ConfigurationDataEntity.class, "configurationName",
+ "com.Config_SampleTest1206.1.txt")).thenReturn(configurationEntity);
+ when(controller.getDataByQuery(
+ "FROM PolicyEntity where policyName = :oldPolicySplit_1 and scope = :oldPolicySplit_0", null))
+ .thenReturn(basePolicyData);
+ readers.add(new BufferedReader(new StringReader("{params: { mode: 'RENAME', path: 'com.Config_test.1.xml',"
+ + " newPath: 'com.Config_testClone.1.xml'}}")));
+ for (int i = 0; i < readers.size(); i++) {
+ try {
+ when(request.getReader()).thenReturn(readers.get(i));
+ PolicyManagerServlet.setPolicyController(controller);
+ servlet.doPost(request, response);
+ assertTrue(response.getContentAsString() != null && response.getContentAsString().contains("success"));
+ } catch (Exception e1) {
+ logger.error("Exception Occured" + e1);
+ fail();
+ }
+ }
+ }
+
+ @Test
+ public void testRenameScope() {
+ PolicyManagerServlet servlet = new PolicyManagerServlet();
+ PolicyController controller = mock(PolicyController.class);
+ List<BufferedReader> readers = new ArrayList<>();
+ readers.add(new BufferedReader(new StringReader("{params: { mode: 'RENAME', path: 'com', newPath: 'Test'}}")));
+ for (int i = 0; i < readers.size(); i++) {
+ try {
+ when(request.getReader()).thenReturn(readers.get(i));
+ PolicyManagerServlet.setPolicyController(controller);
+ servlet.doPost(request, response);
+ assertTrue(response.getContentAsString() != null && response.getContentAsString().contains("success"));
+ } catch (Exception e1) {
+ logger.error("Exception Occured" + e1);
+ fail();
+ }
+ }
+ }
+
+ @Test
+ public void testSetPolicyNames() {
+ JsonArray mockJsonArray = Mockito.mock(JsonArray.class);
+ PolicyManagerServlet.setPolicyNames(mockJsonArray);
+ assertEquals(mockJsonArray, PolicyManagerServlet.getPolicyNames());
+ }
+
+ @Test
+ public void testDoPostSetErrorException() throws IOException {
+ PolicyManagerServlet servlet = new PolicyManagerServlet();
+ HttpServletRequest mockRequest = Mockito.mock(HttpServletRequest.class);
+ HttpServletResponse mockResponse = Mockito.mock(HttpServletResponse.class);
+ doThrow(IOException.class).when(mockRequest).getReader();
+ doThrow(IOException.class).when(mockResponse).sendError(any(Integer.class), any(String.class));
+ servlet.doPost(mockRequest, mockResponse);
+ verify(mockRequest).getReader();
+ }
+
+ @Test
+ public void testDoPostException() throws IOException {
+ PolicyManagerServlet servlet = new PolicyManagerServlet();
+ HttpServletRequest mockRequest = Mockito.mock(HttpServletRequest.class);
+ HttpServletResponse mockResponse = Mockito.mock(HttpServletResponse.class);
+
+ doThrow(IOException.class).when(mockRequest).getReader();
+ doThrow(IOException.class).when(mockResponse).sendError(any(Integer.class), any(String.class));
+ doThrow(IOException.class).when(mockResponse).getWriter();
+
+ servlet.doPost(mockRequest, mockResponse);
+ verify(mockRequest).getReader();
+ verify(mockResponse).getWriter();
+ }
+
+ @Test
+ public void testDoPostSuccess() throws IOException {
+ PolicyManagerServlet servlet = new PolicyManagerServlet();
+ HttpServletRequest mockRequest = Mockito.mock(HttpServletRequest.class);
+ HttpServletResponse mockResponse = Mockito.mock(HttpServletResponse.class);
+ PrintWriter mockPrintWriter = Mockito.mock(PrintWriter.class);
+
+ doThrow(IOException.class).when(mockRequest).getReader();
+ when(mockResponse.getWriter()).thenReturn(mockPrintWriter);
+
+ servlet.doPost(null, mockResponse);
+ verify(mockResponse).getWriter();
+ }
+
+ @PrepareForTest(ServletFileUpload.class)
+ @Test
+ public void testDoPostUploadFileException() {
+ PolicyManagerServlet servlet = new PolicyManagerServlet();
+ HttpServletRequest mockRequest = Mockito.mock(HttpServletRequest.class);
+ HttpServletResponse mockResponse = Mockito.mock(HttpServletResponse.class);
+ PowerMockito.mockStatic(ServletFileUpload.class);
+ when(ServletFileUpload.isMultipartContent(mockRequest)).thenReturn(true);
+ servlet.doPost(mockRequest, mockResponse);
+ PowerMockito.verifyStatic(ServletFileUpload.class, Mockito.times(1));
+ }