Commit 2079827c authored by huriarte's avatar huriarte

Pruebas Unitarias para Servicio de Validación

parent ba5a65ce
...@@ -79,7 +79,10 @@ public class AgentControllerTest { ...@@ -79,7 +79,10 @@ public class AgentControllerTest {
@WithMockUser(username="admin",roles={"USER","ADMIN"}) @WithMockUser(username="admin",roles={"USER","ADMIN"})
public void uploadFile_whenFileXLS_isOK() throws Exception { public void uploadFile_whenFileXLS_isOK() throws Exception {
MockMultipartFile xlsFile = new MockMultipartFile("file", "my-xls-file.xls", "application/vnd.ms-excel", MockMultipartFile xlsFile = new MockMultipartFile(
"file",
"my-xls-file.xls",
"application/vnd.ms-excel",
"my-xls-file".getBytes()); "my-xls-file".getBytes());
......
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package com.bytesw.bytebot.service;
import com.bytesw.bytebot.http.FileValidationResponse;
import com.bytesw.bytebot.http.FileValidationResult;
import com.bytesw.bytebot.http.enums.ValidationStatusEnum;
import com.bytesw.bytebot.repository.QuestionFileRepository;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import static org.assertj.core.api.Java6Assertions.assertThat;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.TestConfiguration;
import org.springframework.boot.test.mock.mockito.MockBean;
import org.springframework.context.annotation.Bean;
import org.springframework.mock.web.MockMultipartFile;
import org.springframework.test.context.junit4.SpringRunner;
import org.springframework.web.multipart.MultipartFile;
/**
* @author Hernán Uriarte Melchor
* @version 14/09/18.
* <p>
* <p>
* Copyright (c) 2018 Byte, S.A. Todos los derechos reservados.
* <p>
* Este software constituye información confidencial y propietaria de Byte, S.A.
* ("Información Confidencial"). Usted no debe develar dicha Información
* Confidencial y debe usarla de acuerdo con los términos de aceptación de
* licencia de uso que firmó con Byte.
*/
@RunWith(SpringRunner.class)
public class FileManagementServiceTest {
@TestConfiguration
static class UserServiceTestContextConfiguration {
@MockBean
private QuestionFileRepository questionFileRepository;
@Bean
public FileManagementService fileManagementService() {
return new FileManagementService();
}
}
@Autowired
FileManagementService fileManagementService;
@Before
public void setUp() {
}
@Test
public void validateAndSaveFile_whenFileHasHeaderRepetead_ErrorWithDetails() throws IOException {
InputStream inputData = new FileInputStream("src/test/resources/data/preguntas-ejemplo-sin-columna-doble-columna.xls");
String uuid = "1f59cb41-778a-46f6-acfc-3625108275bb";
MultipartFile xlsFileHeadersRepetead = new MockMultipartFile(
"preguntas-ejemplo-sin-columna-doble-columna.xls",
"preguntas-ejemplo-sin-columna-doble-columna.xls",
"application/vnd.ms-excel",
inputData);
FileValidationResponse response = fileManagementService.validateAndSaveFile(uuid, xlsFileHeadersRepetead);
assertThat(response.getFileValidationResult().getStatus())
.isEqualTo(ValidationStatusEnum.HEADER_ERROR);
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment