public async Task CalculaLucros_Should_ReturnSuccessfullyRequest() { //Arrange IList <Funcionario> lFuncionarios = new FuncionarioUnitModel().getDefaultFuncionarios(); var mockFuncionarioRepository = Substitute.For <IRepository <Funcionario> >(); decimal totalDisponibilizado = 100000; mockFuncionarioRepository.GetAll(). Returns(lFuncionarios); FuncionariosService fs = new FuncionariosService(mockFuncionarioRepository); //Act var result = await fs.CalculaLucros(totalDisponibilizado); //Assert //TODO: WRITE one fixed return for the defaultFuncionarios result.total_de_funcionarios.Should().Be(lFuncionarios.Count); result.participacoes.Count.Should().Be(lFuncionarios.Count); result.participacoes.First().matricula.Should().NotBe(string.Empty); result.participacoes.First().valor_da_participação.Should().Be(182825.28m); result.participacoes.First().nome.Should().NotBe(string.Empty); result.total_disponibilizado.Should().Be(totalDisponibilizado); result.total_distribuido.Should().BeGreaterThan(0); result.saldo_total_disponibilizado.Should().NotBe(0); }
public ServicosController(ServicoService servicoService, FuncionariosService funcionariosService, ClienteService clienteService, ProcedimentosService procedimentosService) { _servicoService = servicoService; _funcionariosService = funcionariosService; _clienteService = clienteService; _procedimentosService = procedimentosService; }
public async Task GetAll_Should_ReturnSuccessfullyRequest() { //Arrange var mockFuncionarioRepository = Substitute.For <IRepository <Funcionario> >(); IList <Funcionario> lFuncionarios = new FuncionarioUnitModel().getDefaultFuncionarios(); mockFuncionarioRepository.GetAll(). Returns(lFuncionarios); FuncionariosService fs = new FuncionariosService(mockFuncionarioRepository); //Act var result = await fs.GetAll(); //Assert result.Count().Should().Be(lFuncionarios.Count); }
public async Task AddOrUpdate_Should_SendSuccessfullyRequest() { //Arrange var mockFuncionarioRepository = Substitute.For <IRepository <Funcionario> >(); mockFuncionarioRepository.CreateList(Arg.Any <IEnumerable <Funcionario> >()). Returns(true); FuncionariosService fs = new FuncionariosService(mockFuncionarioRepository); IList <Funcionario> lFuncionarios = new FuncionarioUnitModel().getDefaultFuncionarios(); //Act bool result = await fs.AddOrUpdate(lFuncionarios); //Assert result.Should().Be(true); }
public async Task GetAll_Should_ReturnOk() { //Arrange var mockRepository = Substitute.For <IRepository <Funcionario> >(); IList <Funcionario> lFuncionarios = new FuncionarioUnitModel().getDefaultFuncionarios(); mockRepository.GetAll().Returns(lFuncionarios); var mockLog = Substitute.For <ILogger>(); var mockRequest = NSubstituteHttpRequest.CreateMockRequest(string.Empty); var funcionariosService = new FuncionariosService(mockRepository); //Act var result = await Funcionarios.GetAll(mockRequest, mockLog, funcionariosService); //Assert result.StatusCode.Should().Be(200); }
public async Task AddOrUpdate_Should_ReturnBadRequest() { //Arrange var mockRepository = Substitute.For <IRepository <Funcionario> >(); mockRepository.CreateList(Arg.Any <IEnumerable <Funcionario> >()).Returns(true); var mockLog = Substitute.For <ILogger>(); var mockRequest = NSubstituteHttpRequest.CreateMockRequest(string.Empty); var funcionariosService = new FuncionariosService(mockRepository); //Act var result = await Funcionarios.AddorUpdate(mockRequest, mockLog, funcionariosService); //Assert result.StatusCode.Should().Be(400); }
public async Task AddOrUpdate_Should_ReturnOk() { //Arrange var mockRepository = Substitute.For <IRepository <Funcionario> >(); mockRepository.CreateList(Arg.Any <IEnumerable <Funcionario> >()).Returns(true); var mockLog = Substitute.For <ILogger>(); IList <Funcionario> lFuncionarios = new FuncionarioUnitModel().getDefaultFuncionarios(); var mockRequest = NSubstituteHttpRequest.CreateMockRequest(lFuncionarios); var funcionariosService = new FuncionariosService(mockRepository); //Act var result = await Funcionarios.AddorUpdate(mockRequest, mockLog, funcionariosService); //Assert result.StatusCode.Should().Be(200); var content = await result.Content.ReadAsStringAsync(); content.Should().Be(lFuncionarios.Count.ToString()); }
public async Task CalculaLucros_Should_ReturnOk() { //Arrange decimal totalDisponibilizado = 100000; var mockRepository = Substitute.For <IRepository <Funcionario> >(); IList <Funcionario> lFuncionarios = new FuncionarioUnitModel().getDefaultFuncionarios(); mockRepository.GetAll().Returns(lFuncionarios); var mockLog = Substitute.For <ILogger>(); var mockRequest = NSubstituteHttpRequest.CreateMockRequest(string.Empty); var funcionariosService = new FuncionariosService(mockRepository); //Act var result = await Funcionarios.CalculaLucros(mockRequest, totalDisponibilizado, mockLog, funcionariosService); //Assert result.StatusCode.Should().Be(200); var content = await result.Content.ReadAsStringAsync(); string.IsNullOrEmpty(content).Should().BeFalse(); content.Should().NotBe("null"); }
public FuncionariosController() { _service = new FuncionariosService(); }
public FuncionariosController(FuncionariosService funcionariosService) { _funcionariosService = funcionariosService; }
public async Task <HttpResponseMessage> AddOrUpdateCandidato() { try { FuncionariosService funcService = new FuncionariosService(); // Verifica se request contém multipart/form-data. if (!Request.Content.IsMimeMultipartContent()) { throw new HttpResponseException(HttpStatusCode.UnsupportedMediaType); } //Diretório App_Data, para salvar o arquivo temporariamente string root = HttpContext.Current.Server.MapPath("~/App_Data"); var provider = new MultipartFormDataStreamProvider(root); // Lê o arquivo da requisição assincronamente await Request.Content.ReadAsMultipartAsync(provider); //Deserializa os dados do Candidato JavaScriptSerializer json_serializer = new JavaScriptSerializer(); var obj = json_serializer.DeserializeObject(provider.FormData.Get("candidato")) as Dictionary <string, object>; Image thumbnail = null; Image img = null; try { //Lê a foto do candidato var httpPostedFile = HttpContext.Current.Request.Files["foto"]; if (httpPostedFile != null) { int length = httpPostedFile.ContentLength; var bytes = new byte[length]; //get imagedata httpPostedFile.InputStream.Read(bytes, 0, length); var stream = new MemoryStream(bytes); img = Image.FromStream(stream, false, false); img = ImageService.EnquadrarImagem((Bitmap)img); thumbnail = ImageService.GetThumbnail(img, 75, 75); stream.Dispose(); if (img.Height > 350) { img = ImageService.GetThumbnail(img, 350, 350); } } } catch { return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, $"Erro ao processar imagem. Por favor, escolha outra! ")); } int funcionarioId = int.Parse(obj["FuncionarioId"].ToString()); //Cria uma instância de Funcionario Funcionario funcionario = null; try { funcionario = funcService.GetFuncionario(funcionarioId); } catch (FuncionarioNaoEncontradoException) { return(Request.CreateErrorResponse(HttpStatusCode.NotFound, "Funcionário não encontrado!")); } funcionario.Login = obj["LoginFuncionario"].ToString(); funcionario.Nome = obj["NomeFuncionario"].ToString(); funcionario.Cargo = obj["CargoFuncionario"].ToString(); funcionario.Area = obj["AreaFuncionario"].ToString(); funcionario.Email = obj["EmailFuncionario"].ToString(); funcionario.Sobre = (obj.ContainsKey("Sobre") && obj["Sobre"] != null) ? obj["Sobre"].ToString() : null; funcionario.DataAdmissao = DateTime.Parse(obj["DataAdmissaoFuncionario"].ToString()); funcionario.Thumbnail = ImageService.ConvertImageByte(thumbnail); funcService.AddOrUpdateFuncionario(funcionario); FuncionarioFoto funcFoto = new FuncionarioFoto { FuncionarioId = funcionario.Id, Foto = ImageService.ConvertImageByte(img) }; funcService.AddOrUpdateFuncionarioFoto(funcFoto); bool?validado = null; //if (User.IsInRole("Administrador")) validado = true; //Cria uma intância do candidato Candidato c = new Candidato { FuncionarioId = funcionarioId, CodigoEleicao = int.Parse(obj["CodigoEleicao"].ToString()), HorarioCandidatura = HelpersMethods.HorarioBrasilia(), Validado = validado }; //Tenta salvar as atualizações try { c = candidatosService.AddOrUpdateCandidato(c); candidatosService.ExcluirMotivoReprovacao(c); //Excluir o arquivo File.Delete(provider.FileData[0].LocalFileName); } catch (FuncionarioNaoCadastradoEleicaoException) { return(Request.CreateResponse(HttpStatusCode.BadRequest, "Você não está inscrito nessa eleição! Contate o administrador.")); } catch (FuncionarioNaoElegivelException e) { return(Request.CreateResponse(HttpStatusCode.BadRequest, e.Message)); } catch { return(Request.CreateResponse(HttpStatusCode.InternalServerError, "Ocorreu um erro desconhecido. Por favor, entre em contato com o suporte.")); } return(Request.CreateResponse(HttpStatusCode.OK, new CandidatoDTO(c))); } catch { return(Request.CreateResponse(HttpStatusCode.InternalServerError, "Ocorreu um erro desconhecido. Por favor, entre em contato com o suporte.")); } }