public void CargarArchivo() { _dbContext = new Contexto().GetAplicattionContext(); CargaArchivoController controlador = new CargaArchivoController(_dbContext); var fileMock = new Mock <IFormFile>(); var content = "1\r\n3\r\n20\r\n20\r\n20"; var fileName = "test.txt"; var ms = new MemoryStream(); var writer = new StreamWriter(ms); writer.Write(content); writer.Flush(); ms.Position = 0; fileMock.Setup(_ => _.OpenReadStream()).Returns(ms); fileMock.Setup(_ => _.FileName).Returns(fileName); fileMock.Setup(_ => _.Length).Returns(ms.Length); CargarArchivo carga = new CargarArchivo() { Archivo = fileMock.Object, Cedula = "1234" }; var respuesta = controlador.Cargar(carga); var actual = respuesta as FileContentResult; Assert.IsNotNull(actual); }
public IActionResult Cargar([FromForm] CargarArchivo datos) { try { if (datos.Archivo.Length > 0) { CargaArchivoNegocio carga = new CargaArchivoNegocio(_context, datos); carga.CargarArchivo(); return(File(Encoding.UTF8.GetBytes(carga.Resultado), "text/plain", "Resultado.txt")); } else { return(BadRequest()); } } catch (ArgumentException e) { return(this.Content(e.Message)); } catch (Exception ex) { return(StatusCode(500, $"Internal server error: {ex}")); } }
public CargaArchivoNegocio(ApplicationContext context, CargarArchivo data) { Context = context; CargaArchivo = data; }