public async Task GetExcluir() { LivroController controller = new LivroController(ObterMockAplicacao()); ViewResult result = await controller.Excluir(1) as ViewResult; Assert.IsNotNull(result); }
public async Task Index() { LivroController controller = new LivroController(ObterMockAplicacao()); ViewResult result = await controller.Index() as ViewResult; Assert.IsNotNull(result); }
public void Editar(int id) { LivroController controller = new LivroController(); ViewResult result = controller.Editar(id) as ViewResult; Assert.IsNotNull(result); }
public void Excluir() { LivroController controller = new LivroController(); ViewResult result = controller.Excluir(id: 7) as ViewResult; Assert.IsNotNull(result); }
public void GetInserir() { LivroController controller = new LivroController(ObterMockAplicacao()); ViewResult result = controller.Inserir() as ViewResult; Assert.IsNotNull(result); }
public void Buscar() { LivroController controller = new LivroController(); ViewResult result = controller.Buscar(autor: "Eddie") as ViewResult; Assert.IsNotNull(result); }
private void buttonCadastroPedido_Click(object sender, EventArgs e) { ItemController itemc = new ItemController(); LivroController livroc = new LivroController(); item.IdPedido = a.IdPedido; item.Quantidade = int.Parse(textQuantidade.Text); item.IdLivro = int.Parse(comboBoxLivro.SelectedValue.ToString()); Livro livro1 = livroc.ObterEstoquePorId(item.IdLivro); int estoque = livro1.Estoque; if (estoque >= item.Quantidade) { livroc.AlterarEstoque(item.Quantidade, estoque, item.IdLivro); Livro livro = livroc.ObterPrecoPorId(item.IdLivro); double valor = livro.Preco; labelValorTotal.Text = (Convert.ToDouble(labelValorTotal.Text) + (valor * item.Quantidade)).ToString(); itemc.Requisicao(buttonCadastroPedido.Text, item); if (item.IdPedido != 0) { this.joinVIEWTableAdapter1.FillByjoin(this.livrariaDBDataSet24joinview.JoinVIEW); } } else if (item.IdPedido != 0) { MessageBox.Show("Estoque Insuficiente!! \nO estoque é de " + estoque + " livros"); } }
public void Editar() { var controller = new LivroController(); ViewResult result = controller.Editar() as ViewResult; // Assert Assert.IsNotNull(result); }
private void btnExcluir_Click(object sender, EventArgs e) { LivroController livroCon = new LivroController(); Livro livro = new Livro(); livro.IdLivro = this.id; livroCon.Requisicao(btnExcluir.Text, livro); }
public LivroControllerTest() { _fixture = new Fixture(); _request = _fixture.Create <RequestLivro>(); _response = _fixture.Create <BaseResponse>(); _service = Substitute.For <ILivroService>(); _logger = Substitute.For <ILogger <LivroController> >(); _controller = new LivroController(_service, _logger); }
public async Task PostExcluir() { var contexto = new Mock <DbContext>(); var mockSet = new Mock <DbSet <Livro> >(); Livro[] livros = ObterLivrosCenarioTeste(); ConfigurarMockSet(livros, contexto, mockSet); var aplicacao = new LivroAplicacao(contexto.Object); LivroController controller = new LivroController(aplicacao); ViewResult result = await controller.ExcluirConfirmado(1) as ViewResult; Assert.IsNull(contexto.Object.Set <Livro>().Find(1)); contexto.Verify(m => m.SaveChangesAsync(), Times.AtLeastOnce(), "É necessário finalizar o contexto!"); }
public void Metodo_Create_Retorna_View_Quando_Model_Is_Invalid() { // Arrange var mockRepository = new Mock <ILivroRepository>(); var controller = new LivroController(mockRepository.Object); controller.ModelState.AddModelError("", "Erro de validação."); // Act var actionResult = controller.Create(new LivroViewModel()); // Assert actionResult.Should().BeOfType <ViewResult>(); }
public void TesteDelete() { var mockRepo = new Mock <ILivroRepository>(); livormock = GetByIdMok(); mockRepo.Setup(repo => repo.Delete(livormock.Id)); var controller = new LivroController(mockRepo.Object); var result = controller.Delete(livormock.Id); Assert.IsType <NotFoundResult>(result.Result); }
public async Task E_Possivel_Invocar_a_Controller_Create() { var serviceMock = new Mock <ILivroServices>(); var serviceLogger = new Mock <ILogger <LivroController> >(); var livro = NovoLivro(); serviceMock.Setup(m => m.Create(It.IsAny <LivroDto>())).ReturnsAsync( new LivroDto { Ativo = livro.Ativo, Autor = livro.Autor, Categoria = livro.Categoria, DataLancamento = livro.DataLancamento, Emissora = livro.Emissora, Quantidade = livro.Quantidade, Titulo = livro.Titulo, Valor = livro.Valor } ); _controller = new LivroController(serviceMock.Object, serviceLogger.Object); Mock <IUrlHelper> url = new Mock <IUrlHelper>(); url.Setup(x => x.Link(It.IsAny <string>(), It.IsAny <object>())).Returns("http://localhost:5000"); _controller.Url = url.Object; var livroDto = new LivroDto { Ativo = livro.Ativo, Autor = livro.Autor, Categoria = livro.Categoria, DataLancamento = livro.DataLancamento, Emissora = livro.Emissora, Quantidade = livro.Quantidade, Titulo = livro.Titulo, Valor = livro.Valor }; var result = await _controller.Create(livroDto); Assert.True(result is CreatedResult); var resultValue = ((CreatedResult)result).Value as LivroDto; Assert.NotNull(resultValue); Assert.Equal(livroDto.Titulo, resultValue.Titulo); Assert.Equal(livroDto.Autor, resultValue.Autor); }
public void TestePost() { var mockRepo = new Mock <ILivroRepository>(); livormock = GetByIdMok(); mockRepo.Setup(repo => repo.Create(livormock)); var controller = new LivroController(mockRepo.Object); var result = controller.Post(livormock); Assert.IsType <Task <IActionResult> >(result); }
public void TesteGetAll() { var mockRepo = new Mock <ILivroRepository>(); mockRepo.Setup(repo => repo.GetAllAsync()) .ReturnsAsync(GetTestLivros()); var controller = new LivroController(mockRepo.Object); var result = controller.Get(); var items = Assert.IsType <List <Livro> >(GetTestLivros()); Assert.Equal(2, items.Count); }
private void btnAlterar_Click(object sender, EventArgs e) { ItemController itemCon = new ItemController(); LivroController livroc = new LivroController(); Item item = new Item(); item.Quantidade = Convert.ToInt32(txtQuantidade.Text); item.IdItem = this.id; item.IdItem = this.idLivro; item.IdPedido = this.idPedido; Livro livro1 = livroc.ObterEstoquePorId(item.IdLivro); int estoque = livro1.Estoque; itemCon.Requisicao(btnAlterar.Text, item); }
private void btnAlterar_Click(object sender, EventArgs e) { LivroController livroCon = new LivroController(); Livro livro = new Livro(); livro.NomeLivro = txtNomeLivro.Text; livro.Categoria = txtCategoria.Text; livro.Preco = Convert.ToDouble(txtPreco.Text); livro.Edicao = txtEdicao.Text; livro.Autor = txtAutor.Text; livro.Estoque = Convert.ToInt32(txtEstoque.Text); livro.IdEditora = this.idEditora; livro.IdLivro = this.id; livroCon.Requisicao(btnAlterar.Text, livro); }
private void buttonCadastroLivro_Click(object sender, EventArgs e) { LivroController liController = new LivroController(); Livro livro = new Livro(); livro.NomeLivro = textBoxNomeLivro.Text; livro.Autor = textBoxAutor.Text; livro.Preco = double.Parse(textBoxPreco.Text); livro.Edicao = textBoxEdicao.Text; livro.Categoria = comboBoxCategoria.SelectedItem.ToString(); livro.Estoque = int.Parse(textEstoque.Text); livro.IdEditora = int.Parse(comboBoxNomeEditora.SelectedValue.ToString()); liController.Requisicao(buttonCadastroLivro.Text, livro); }
public void TesteGet() { var mockRepo = new Mock <ILivroRepository>(); livormock = GetByIdMok(); mockRepo.Setup(repo => repo.GetById(livormock.Id)) .ReturnsAsync(GetByIdMok()); var controller = new LivroController(mockRepo.Object); var result = controller.Get(livormock.Id).Result as OkObjectResult; Assert.IsType <Livro>(result.Value); Assert.Equal(livormock.Id, (result.Value as Livro).Id); }
public async Task PostAlterar() { //nesse caso, mocamos o aplicacao, porque o método do update do EF6 não permite mock var aplicacao = new Mock <ILivroAplicacao>(); Livro[] livros = ObterLivrosCenarioTeste(); var livro = livros.Where(d => d.Id == 1).First(); var nomeAnterior = livro.Nome; livro.Nome = "Novo nome"; aplicacao.Setup(a => a.Alterar(It.IsAny <Livro>())).Returns(Task.FromResult(false)).Verifiable(); LivroController controller = new LivroController(aplicacao.Object); ViewResult result = await controller.Alterar(livro) as ViewResult; var livroAlterado = livros.Where(d => d.Id == 1).FirstOrDefault(); Assert.AreNotEqual(nomeAnterior, livroAlterado.Nome); aplicacao.Verify(m => m.Alterar(It.IsAny <Livro>()), Times.AtLeastOnce(), "É necessário invocar o método alterar da interface ILivroAplicacao!"); }
public async Task E_Possivel_Invocar_a_Controller_Create_BadRequest() { var serviceMock = new Mock <ILivroServices>(); var serviceLogger = new Mock <ILogger <LivroController> >(); serviceMock.Setup(m => m.Create(It.IsAny <LivroDto>())).ReturnsAsync( new LivroDto { Ativo = true, Autor = Faker.Name.FullName(), Categoria = Faker.Name.First(), DataLancamento = Faker.DateOfBirth.Next(), Emissora = Faker.Company.Name(), Quantidade = Faker.RandomNumber.Next(), Titulo = Faker.Name.FullName(), Valor = Faker.RandomNumber.Next() } ); _controller = new LivroController(serviceMock.Object, serviceLogger.Object); _controller.ModelState.AddModelError("Titulo", "É um Campo Obrigatório"); Mock <IUrlHelper> url = new Mock <IUrlHelper>(); url.Setup(x => x.Link(It.IsAny <string>(), It.IsAny <object>())).Returns("http://localhost:5000"); _controller.Url = url.Object; var userDtoCreate = new LivroDto { Ativo = true, Autor = Faker.Name.FullName(), Categoria = Faker.Name.First(), DataLancamento = Faker.DateOfBirth.Next(), Emissora = Faker.Company.Name(), Quantidade = Faker.RandomNumber.Next(), Titulo = Faker.Name.FullName(), Valor = Faker.RandomNumber.Next() }; var result = await _controller.Create(userDtoCreate); Assert.True(result is BadRequestObjectResult); }
public async Task PostInserir() { var contexto = new Mock <DbContext>(); var mockSet = new Mock <DbSet <Livro> >(); Livro[] livros = ObterLivrosCenarioTeste(); ConfigurarMockSet(livros, contexto, mockSet); var aplicacao = new LivroAplicacao(contexto.Object); var livro = new Livro { Id = 5, Nome = "Livro teste", Autor = "Autor teste", Ano = 2011, Edicao = 1 }; LivroController controller = new LivroController(aplicacao); ViewResult result = await controller.Inserir(livro) as ViewResult; mockSet.Verify(m => m.AddRange(It.IsAny <IEnumerable <Livro> >()), Times.Once(), "Um livro deve ser inserido pelo método"); contexto.Verify(m => m.SaveChangesAsync(), Times.AtLeastOnce(), "É necessário finalizar o contexto!"); }
public void GetDetalhesLivro_Return_OkResult() { //Arrange DbContextOptions <SqlServerContext> dbContextOptions = new DbContextOptionsBuilder <SqlServerContext>() .UseSqlServer("Server=(localdb)\\mssqllocaldb;Database=Livraria;Trusted_Connection=True;") .Options; SqlServerContext context = new SqlServerContext(dbContextOptions); LivroRepositorio livroRepositorio = new LivroRepositorio(context); AutorRepositorio autorRepositorio = new AutorRepositorio(context); EditoraRepositorio editoraRepositorio = new EditoraRepositorio(context); LivroServico livroServico = new LivroServico(livroRepositorio, autorRepositorio, editoraRepositorio); var controller = new LivroController(livroServico); var id = 1; //Act var data = controller.GetDetalhesLivro(id); //Assert Assert.IsType <JsonResult>(data); }
public LivroControllerTest() { autorService = new LivroServiceMock(); autorController = new LivroController(autorService); }
static void LerLivro(List <Livro> lista) { // VARIAVEIS string isbn, titulo, genero, autor; bool err; long numeroTombo; DateTime dataPublicacao = DateTime.Now; Livro livro; CultureInfo CultureBr = new CultureInfo(name: "pt-BR"); // LOCALIZAÇÃO Console.WriteLine("\n>>>CADASTRO LIVRO<<<\n"); do { // LAÇO TRATA ISBN REPETIDO Console.Write("ISBN do Livro: "); isbn = Console.ReadLine(); if (LivroController.IsbnExiste(lista, isbn)) // CASI TENHA ISBN REPETIDO NA LISTA { Console.WriteLine("Livro já cadastrado.\nPrecione qualquer tecla para continuar..."); Console.ReadKey(); Console.Clear(); // LIMPA TELA return; } } while (isbn == ""); do { // LAÇO TRATA TITULO VAZIO Console.Write("Titulo do Livro: "); titulo = Console.ReadLine(); } while (titulo == ""); do { // LAÇO TRATA GENERO VAZIO Console.Write("Gênero do Livro: "); genero = Console.ReadLine(); } while (genero == ""); do { // LAÇO TRATA DATA POSTERIOR A DATA ATUAL err = false; try { Console.Write("Data de Publicacao do Livro (dd/mm/yyyy): "); dataPublicacao = DateTime.ParseExact(Console.ReadLine(), "d", CultureBr); if ((Convert.ToDateTime(dataPublicacao)) > (Convert.ToDateTime(DateTime.Now))) { Console.WriteLine("Informe uma data anterior a data de hoje"); err = true; } } catch (Exception) { Console.WriteLine("Informe a data (dd/mm/yyyy)"); err = true; } } while (err); do { // LAÇO TRATA AUTOR VAZIO Console.Write("Autor do Livro: "); autor = Console.ReadLine(); } while (autor == ""); if (lista.Count == 0) { numeroTombo = 0; } else { numeroTombo = lista[lista.Count - 1].NumeroTombo + 1; } // IMPRIMI NÚMERO DO TOMBO PARA BIBLIOTECÁRIO ADICIONAR AO LIVRO FÍSICO Console.WriteLine("\n>>>Número Tombo do Livro: " + numeroTombo + "<<<\n"); Console.WriteLine("Pressione qualquer tecla para continuar..."); Console.ReadKey(); Console.Clear(); // LIMPA TELA // RETORNA LIVRO ESTANCIADO livro = new Livro() { NumeroTombo = numeroTombo, Isbn = isbn, Titulo = titulo, Genero = genero, DataPublicacao = dataPublicacao, Autor = autor }; // ADICIONA LIVRO NA LISTA LIVRO lista.Add(livro); // ESCREVE A LISTA NO ARQUIVO ArquivoController.Escrita(lista); Console.Clear(); // LIMPA TELA Console.WriteLine("\n>>>LIVRO CADASTRADO<<<\nPrecione qualquer tecla para continuar..."); Console.ReadLine(); Console.Clear(); }
static void LerEmprestimo(List <Cliente> listaCliente, List <Livro> listaLivro, List <Emprestimo> listaEmprestimo) { // VARIAIVES string cpf, numeroTombo, op; long idCliente; bool err; DateTime dataDevolucao = DateTime.Now; Emprestimo emprestimo; CultureInfo CultureBr = new CultureInfo(name: "pt-BR"); // LOCALIZAÇÃO Console.WriteLine("\n>>>CADASTRO EMPRESTIMO<<<\n"); do { // LAÇO TRATA NÚMERO TOMBO DE LIVRO err = false; Console.Write("Informe o Número Tombo do Livro: "); numeroTombo = Console.ReadLine(); // SE EXISTIR LIVRO NA LISTA DE EMPRESTADO E ESTAR COM STATUS EMPRESTADO RETORNA O OBJETO emprestimo = EmprestimoController.NumeroTomboEmprestado(listaEmprestimo, long.Parse(numeroTombo)); // CASO NÃO EXISTIR NÚMERO TOMBO DE LIVRO OU ELE ESTAR EMPRESTADO if (!LivroController.NumeroTomboExiste(listaLivro, long.Parse(numeroTombo)) || emprestimo != null) { // CAMINHOS PARA USUARIO ESCOLHER Console.WriteLine("Livro indisponível para empréstimo.\n1 - Digitar Número Tombo novamente" + "\n2 - Cadastrar Livro\n3 - Voltar ao Menu Principal "); op = Console.ReadLine(); switch (op) // SWITCH DE OPÇÕES PARA SABER QUAL CAMINHO USUARIO ESCOLHEU { case "2": // CADASTRO CLIENTE Console.Clear(); // LIMPA TELA LerLivro(listaLivro); err = true; // INFORMAR O CPF NOVAMENTE POREM COM CPF JÁ CADASTRADO Console.WriteLine("\n>>>CADASTRO EMPRESTIMO<<<\n"); // LOCALIZAÇÃO break; case "3": // VOLTAR MENU PRINCIPAL Console.Clear(); // LIMPA TELA return; default: // DIGITAR CPF NOVAMENTE OU OUTRO NÚMERO/LETRA NÃO INFORMADO NO MENU err = true; break; } } } while (err); do { err = false; // INFORMA CPF Console.Write("Informe o CPF do Cliente: "); cpf = Console.ReadLine(); // RETORNA ID DE CLIENTE QUE TEM ESSE CPF idCliente = ClienteController.RetornaCLienteCpf(listaCliente, cpf); // CASO CPF NÃO EXISTA if (idCliente == -1) { // CAMINHOS CASO CPF NÃO RECONHECIDO Console.WriteLine("Cliente não cadastrado.\n1 - Digitar CPF novamente" + "\n2 - Cadastrar Cliente\n3 - Voltar ao Menu Principal "); op = Console.ReadLine(); switch (op) // SWITCH DE OPÇÕES PARA SABER QUAL CAMINHO USUARIO ESCOLHEU { case "2": // CADASTRO CLIENTE Console.Clear(); // LIMPA TELA LerCliente(listaCliente); err = true; // INFORMAR O CPF NOVAMENTE POREM COM CPF JÁ CADASTRADO Console.WriteLine("\n>>>CADASTRO EMPRESTIMO<<<\n"); // LOCALIZAÇÃO Console.WriteLine("Informe o Número Tombo do Livro: " + numeroTombo); // LOCALIZAÇÃO break; case "3": // VOLTAR MENU PRINCIPAL Console.Clear(); // LIMPA TELA return; default: // DIGITAR CPF NOVAMENTE OU OUTRO NÚMERO/LETRA NÃO INFORMADO NO MENU err = true; break; } } } while (err); // ARMAZENA DATA DE DEVOLUÇÃO do { err = false; try { Console.Write("Data de Devolução (dd/mm/yyyy): "); dataDevolucao = DateTime.ParseExact(Console.ReadLine(), "d", CultureBr); if ((Convert.ToDateTime(dataDevolucao)) < (Convert.ToDateTime(DateTime.Now))) { Console.WriteLine("Informe uma data posterior a data atual"); err = true; } } catch (Exception) { Console.WriteLine("Informe a data (dd/mm/yyyy)"); err = true; } } while (err); // ESTANCIA EMPRESTIMO ESTANCIADO emprestimo = new Emprestimo() { IdCliente = idCliente, NumeroTombo = long.Parse(numeroTombo), DataEmprestimo = DateTime.Now, DataDevolucao = dataDevolucao, StatusEmprestimo = 1 }; // ADICIONA O EMPRESTIMO NA LISTA EMPRESTIMO listaEmprestimo.Add(emprestimo); // ADICIONA LISTA NO ARQUIVO ArquivoController.Escrita(listaEmprestimo); Console.Clear(); // LIMPA TELA Console.WriteLine("\n>>>EMPRESTIMO CADASTRADO<<<\nPrecione qualquer tecla para continuar..."); Console.ReadLine(); Console.Clear(); }