aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJorge Hernandez <jh1730@att.com>2018-08-15 13:22:08 +0000
committerGerrit Code Review <gerrit@onap.org>2018-08-15 13:22:08 +0000
commit84df4a428ded309f750f52ac1c104ac84e426fc0 (patch)
tree5588b212eb4cfb3521d6b26a9d4781b63ff62f5b
parent8f4e03b0867eada5220f78a3988865851443b7da (diff)
parent6f340c6269a14a239a554fe799a1cdfa12e8cd4f (diff)
Merge "Junit Coverage for Import Black List Entries"
-rw-r--r--POLICY-SDK-APP/src/test/java/org/onap/policy/controller/ExportAndImportDecisionBlackListEntriesTest.java104
1 files changed, 36 insertions, 68 deletions
diff --git a/POLICY-SDK-APP/src/test/java/org/onap/policy/controller/ExportAndImportDecisionBlackListEntriesTest.java b/POLICY-SDK-APP/src/test/java/org/onap/policy/controller/ExportAndImportDecisionBlackListEntriesTest.java
index 0457f2b92..e9f953b87 100644
--- a/POLICY-SDK-APP/src/test/java/org/onap/policy/controller/ExportAndImportDecisionBlackListEntriesTest.java
+++ b/POLICY-SDK-APP/src/test/java/org/onap/policy/controller/ExportAndImportDecisionBlackListEntriesTest.java
@@ -17,6 +17,7 @@
* limitations under the License.
* ============LICENSE_END=========================================================
*/
+
package org.onap.policy.controller;
import static org.junit.Assert.assertTrue;
@@ -24,103 +25,70 @@ import static org.junit.Assert.fail;
import static org.mockito.Mockito.mock;
import java.io.BufferedReader;
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.File;
-import java.io.FileInputStream;
import java.io.IOException;
-import java.io.InputStream;
import java.io.StringReader;
-
-import javax.servlet.ReadListener;
-import javax.servlet.ServletInputStream;
import javax.servlet.http.HttpServletRequest;
-
import org.apache.commons.io.IOUtils;
+import org.apache.commons.lang3.ArrayUtils;
import org.junit.Before;
import org.junit.Test;
import org.mockito.Mockito;
-import org.springframework.mock.web.MockHttpServletRequest;
import org.springframework.mock.web.MockHttpServletResponse;
+import org.springframework.mock.web.MockMultipartFile;
+import org.springframework.mock.web.MockMultipartHttpServletRequest;
+import org.springframework.util.FileCopyUtils;
public class ExportAndImportDecisionBlackListEntriesTest {
private HttpServletRequest request;
private MockHttpServletResponse response;
String jsonString;
-
+
@Before
public void setUp() throws Exception {
- request = mock(HttpServletRequest.class);
- response = new MockHttpServletResponse();
+ request = mock(HttpServletRequest.class);
+ response = new MockHttpServletResponse();
}
-
+
@Test
- public void testExportBlackList() throws IOException{
+ public void testExportBlackList() throws IOException {
ClassLoader classLoader = getClass().getClassLoader();
jsonString = IOUtils.toString(classLoader.getResourceAsStream("DecisionPolicyData.txt"));
- try(BufferedReader reader = new BufferedReader(new StringReader(jsonString))){
+ try (BufferedReader reader = new BufferedReader(new StringReader(jsonString))) {
Mockito.when(request.getReader()).thenReturn(reader);
ExportAndImportDecisionBlackListEntries controller = new ExportAndImportDecisionBlackListEntries();
controller.exportBlackList(request, response);
assertTrue("".equals(response.getContentAsString()));
- }catch(Exception e){
+ } catch (Exception e) {
fail("Not expecting Exception while Exporting BlackListEntries.");
}
}
-
+
@Test
- public void testImportBlackList() throws Exception{
- MockHttpServletRequest request = new MockHttpServletRequest();
- ExportAndImportDecisionBlackListEntries controller = new ExportAndImportDecisionBlackListEntries();
- File file = new File("src/test/resources/BlackList.xls");
- try(FileInputStream targetStream = new FileInputStream(file)){
- ExportAndImportDecisionBlackListEntriesTest testController = Mockito.mock(ExportAndImportDecisionBlackListEntriesTest.class);
- ServletInputStream inputStream = testController.getInputStream(getBytes(targetStream));
- Mockito.when(request.getInputStream()).thenReturn(inputStream);
- String boundary = "===" + System.currentTimeMillis() + "===";
- request.addHeader("Content-Type", "multipart/form-data; boundary=" + boundary);
- request.addHeader("name", "BlackList.xls");
- controller.importBlackListFile(request, response);
- assertTrue(response.getContentAsString().contains("data"));
- }catch(Exception e){
- fail("Not expecting Exception while importing BlackListEntries.");
- }
- }
-
- public static byte[] getBytes(InputStream is) throws IOException {
- int len;
- int size = 1024;
- byte[] buf;
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- buf = new byte[size];
- while ((len = is.read(buf, 0, size)) != -1)
- bos.write(buf, 0, len);
- buf = bos.toByteArray();
- return buf;
- }
-
- public ServletInputStream getInputStream(byte[] body) throws IOException {
- final ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(body);
- ServletInputStream servletInputStream = new ServletInputStream() {
- public int read() throws IOException {
- return byteArrayInputStream.read();
- }
+ public void testImportBlackList() throws Exception {
+ byte[] fileContent = FileCopyUtils
+ .copyToByteArray(Thread.currentThread().getContextClassLoader().getResourceAsStream("BlackList.xls"));
+
+ MockMultipartFile file = new MockMultipartFile("BlackList.xls",
+ Thread.currentThread().getContextClassLoader().getResourceAsStream("BlackList.xls"));
+
+ MockMultipartHttpServletRequest req = new MockMultipartHttpServletRequest();
+ req.setMethod("POST");
- @Override
- public boolean isFinished() {
- return false;
- }
+ String boundary = "JPnJUN6FOo0qLySf-__r_RY1nQE7QOXXJ_nLK1s";
+ req.setContentType("multipart/form-data; boundary=" + boundary);
- @Override
- public boolean isReady() {
- return false;
- }
+ String start = "--" + boundary + "\r\n Content-Disposition: form-data; name=\"file\"; filename=\""
+ + "BlackList.xls" + "\"\r\n" + "Content-type: " + "application/vnd.ms-excel" + "\r\n\r\n";
- @Override
- public void setReadListener(ReadListener readListener) {
- }
- };
- return servletInputStream;
- }
+ String end = "\r\n--" + boundary + "--";
+ req.setContent(ArrayUtils.addAll(start.getBytes(), ArrayUtils.addAll(fileContent, end.getBytes())));
+ req.addHeader("name", "BlackList.xls");
+ req.addFile(file);
+ ExportAndImportDecisionBlackListEntries controller = new ExportAndImportDecisionBlackListEntries();
+ MockHttpServletResponse resp = new MockHttpServletResponse();
+ controller.importBlackListFile(req, resp);
+ assertTrue(resp.getContentAsString().contains("data"));
+
+ }
}