public void ComputadorAppService_InformarLiberacaoDoComputador_ComputadorNaoExiste() { // Arrange var vm = new LiberarComputadorViewModel(); vm.DescricaoComputador = "C001"; var computador = new Computador("C001", "A01"); computador.Ocorrencias.Add(Ocorrencia.OcorrenciaFabrica.ComputadorEmUso()); var repo = new Mock <IComputadorRepositorio>(); repo.Setup(x => x.Atualizar(computador)); var servico = new Mock <IComputadorServico>(); servico.Setup(x => x.BuscarPorDescricao(vm.DescricaoComputador)); servico.Setup(x => x.Atualizar(computador)); var appServico = new ComputadorAppServico(servico.Object); // Act vm = appServico.LiberarComputador(vm); // Assert Assert.Equal(string.Format("O computador {0} não existe.", vm.DescricaoComputador), vm.Resultado); Assert.Equal("Computador não existe", appServico.BuscarPorDescricao(vm.DescricaoComputador).ResultadoTransacao); }
public void ComputadorAppService_BuscarComputadorPorDescricao_RetornoValido() { // Arrange var vm = new ConsultarComputadorViewModel(); vm.Descricao = "C001"; var computador = new Computador("C001", "A01"); var repo = new Mock <IComputadorRepositorio>(); repo.Setup(x => x.BuscarPorDescricao(vm.Descricao)).Returns(computador); var servico = new Mock <IComputadorServico>(); servico.Setup(x => x.BuscarPorDescricao(vm.Descricao)).Returns(computador); var appServico = new ComputadorAppServico(servico.Object); // Act var resultado = appServico.BuscarPorDescricao(vm.Descricao); // Assert Assert.NotNull(resultado); Assert.Equal(computador.Descricao, resultado.Descricao); Assert.Equal(computador.Andar, resultado.Andar); Assert.Equal(computador.Ativo, resultado.Ativo); Assert.Equal(computador.Ocorrencias, resultado.Ocorrencias); Assert.Equal("OK", resultado.ResultadoTransacao); }
public void ComputadorAppService_BuscarComputadorPorId_ValidarRetorno() { // Arrange var computador = new Computador("C001", "A01"); computador.Id = "123"; computador.Ocorrencias.Add(Ocorrencia.OcorrenciaFabrica.PrimeiraOcorrencia()); var repo = new Mock <IComputadorRepositorio>(); repo.Setup(x => x.Buscar(computador.Id)).Returns(computador); var servico = new Mock <IComputadorServico>(); servico.Setup(x => x.Buscar(computador.Id)).Returns(computador); var appServico = new ComputadorAppServico(servico.Object); // Act var resultado = appServico.Buscar(computador.Id); // Assert Assert.NotNull(resultado); Assert.Equal(computador.Id, resultado.Id); Assert.Equal("OK", resultado.ResultadoTransacao); Assert.True(!string.IsNullOrEmpty(resultado.Descricao.Trim())); Assert.True(!string.IsNullOrEmpty(resultado.Andar.Trim())); Assert.True(resultado.Ocorrencias.Count > 0); }
public void ComputadorAppService_InformarUtilizacao_RetornarComputadorDesativadoException() { // Arrange var vm = new UtilizarComputadorViewModel(); vm.Descricao = "C001"; var computador = new Computador("C001", "A01"); computador.Ocorrencias.Add(Ocorrencia.OcorrenciaFabrica.PrimeiraOcorrencia()); var repo = new Mock <IComputadorRepositorio>(); repo.Setup(x => x.Atualizar(computador)); var servico = new Mock <IComputadorServico>(); servico.Setup(x => x.BuscarPorDescricao(vm.Descricao)).Returns(computador); servico.Setup(x => x.Atualizar(computador)) .Throws(new ComputadorDesativadoException()); var appServico = new ComputadorAppServico(servico.Object); // Act & Assert var ex = Assert.Throws <ComputadorDesativadoException>(() => appServico.UtilizarComputador(vm)); Assert.NotNull(ex); Assert.Equal("Computador desativado. Não é possível utilizar este computador!", ex.Message); }
public void ComputadorAppService_InformarLiberacaoDoComputador_ComputadorLiberado() { // Arrange var vm = new LiberarComputadorViewModel(); vm.DescricaoComputador = "C001"; var computador = new Computador("C001", "A01"); computador.Ocorrencias.Add(Ocorrencia.OcorrenciaFabrica.ComputadorEmUso()); var repo = new Mock <IComputadorRepositorio>(); repo.Setup(x => x.Atualizar(computador)); var servico = new Mock <IComputadorServico>(); servico.Setup(x => x.BuscarPorDescricao(vm.DescricaoComputador)).Returns(computador); servico.Setup(x => x.Atualizar(computador)); var appServico = new ComputadorAppServico(servico.Object); // Act vm = appServico.LiberarComputador(vm); // Assert Assert.NotNull(vm); Assert.Equal(string.Format("O computador {0} foi liberado.", vm.DescricaoComputador), vm.Resultado); Assert.True(appServico.BuscarPorDescricao(vm.DescricaoComputador).PegarUltimaOcorrencia().Liberado); }
public void ComputadorAppService_InformarUtilizacao_RetornoValido() { // Arrange var vm = new UtilizarComputadorViewModel(); vm.Descricao = "C001"; var computador = new Computador("C001", "A01"); computador.Ocorrencias.Add(Ocorrencia.OcorrenciaFabrica.PrimeiraOcorrencia()); var repo = new Mock <IComputadorRepositorio>(); repo.Setup(x => x.Atualizar(computador)); var servico = new Mock <IComputadorServico>(); servico.Setup(x => x.BuscarPorDescricao(vm.Descricao)).Returns(computador); servico.Setup(x => x.Atualizar(computador)); var appServico = new ComputadorAppServico(servico.Object); // Act vm = appServico.UtilizarComputador(vm); // Assert Assert.True(!appServico.BuscarPorDescricao(vm.Descricao).VerificarDisponibilidade()); Assert.Equal(false, appServico.BuscarPorDescricao(vm.Descricao).PegarUltimaOcorrencia().Liberado); Assert.Equal("Agora este computador está em uso.", vm.Resultado); }
public void ComputadorController_DesativarComputador_FoiDesativado() { // Arrange var vm = new DesativarComputadorViewModel("123"); var computador = new Computador("C001", "A01"); computador.Id = "123"; var servico = new Mock <IComputadorServico>(); servico.Setup(x => x.Buscar(vm.Id)).Returns(computador); var appServico = new ComputadorAppServico(servico.Object); // Act var response = new ComputadorController(appServico) .DesativarComputador(new HttpRequestMessage { Content = new ObjectContent <DesativarComputadorViewModel>(vm, new JsonMediaTypeFormatter()) }); // Assert Assert.True(vm.EhValido()); Assert.NotNull(computador); Assert.Equal(vm.Id, computador.Id); Assert.True(computador.Ativo); Assert.NotNull(response); Assert.NotNull(response.Content); Assert.Equal("O computador foi desativado.", response.Content.ReadAsStringAsync().Result); }
public void ComputadorAppService_BuscarComputadorPorId_ComputadorNaoExiste() { // Arrange string id = "123"; var repo = new Mock <IComputadorRepositorio>(); repo.Setup(x => x.Buscar(id)); var servico = new Mock <IComputadorServico>(); servico.Setup(x => x.Buscar(id)); var appServico = new ComputadorAppServico(servico.Object); // Act var computadorVm = appServico.Buscar(id); // Assert Assert.NotNull(computadorVm); Assert.Equal("Computador não existe", computadorVm.ResultadoTransacao); }
public void ComputadorAppService_InformarUtilizacao_ComputadorNaoExiste() { // Arrange var vm = new UtilizarComputadorViewModel(); vm.Descricao = "C001"; var computador = new Computador("C001", "A01"); var repo = new Mock <IComputadorRepositorio>(); repo.Setup(x => x.Atualizar(computador)); var servico = new Mock <IComputadorServico>(); servico.Setup(x => x.BuscarPorDescricao(vm.Descricao)); servico.Setup(x => x.Atualizar(computador)); var appServico = new ComputadorAppServico(servico.Object); // Act vm = appServico.UtilizarComputador(vm); // Assert Assert.Equal("O computador informado não existe!", vm.Resultado); Assert.Equal("Computador não existe", appServico.BuscarPorDescricao(vm.Descricao).ResultadoTransacao); }
public void ComputadorAppService_DesativarComputadorNaoLiberado_RetornarException() { // Arrange var vm = new DesativarComputadorViewModel("123"); var computador = new Computador("C001", "A01"); computador.Id = vm.Id; var repo = new Mock <IComputadorRepositorio>(); repo.Setup(x => x.Desativar(computador)); var servico = new Mock <IComputadorServico>(); servico.Setup(x => x.Buscar(computador.Id)).Returns(computador); servico.Setup(x => x.Desativar(computador)) .Throws(new ComputadorEmUsoException("Não é possível desativar um computador em uso!")); var appServico = new ComputadorAppServico(servico.Object); // Act & Assert var ex = Assert.Throws <ComputadorEmUsoException>(() => appServico.Desativar(vm)); Assert.NotNull(ex); Assert.Equal("Não é possível desativar um computador em uso!", ex.Message); }
public void ComputadorAppService_BuscarTodosPorAndar_RetornoValido() { // Arrange var andar = "A01"; var lista = new List <Computador>(); lista.Add(new Computador("C001", andar)); lista.Add(new Computador("C002", andar)); var repo = new Mock <IComputadorRepositorio>(); repo.Setup(x => x.BuscarTodosPorAndar(andar)).Returns(lista); var servico = new Mock <IComputadorServico>(); servico.Setup(x => x.BuscarTodosPorAndar(andar)).Returns(lista); var appServico = new ComputadorAppServico(servico.Object); // Act var resultado = appServico.BuscarTodosPorAndar(andar); // Assert Assert.NotNull(resultado); Assert.True(resultado.Count == 2); }