示例#1
0
        public void Setup()
        {
            var connection = new SqliteConnection("Filename=:memory:");
            //Arrange
            var optionsSqlite = new DbContextOptionsBuilder <ventasContext>()
                                .UseSqlite(connection)
                                .Options;

            connection.Open();

            _dbContext = new ventasContext(optionsSqlite);
            _dbContext.Database.EnsureDeleted();
            _dbContext.Database.EnsureCreated();

            _salidaService = new SalidaProductoService(
                new UnitOfWork(_dbContext),
                new ProductoRepository(_dbContext));

            ProductoSimple pan = (ProductoSimple)ProductoMother.ProductoPan("005");

            pan.RegistrarEntrada(10);

            ProductoSimple salchicha = (ProductoSimple)ProductoMother.ProductoSalchicha("006");

            salchicha.RegistrarEntrada(10);

            ProductoCompuesto perro = new("004", "Perro", 5000, new List <Producto> {
                pan, salchicha
            });

            //_dbContext.Productos.Add(pan);
            _dbContext.Productos.Add(salchicha);
            _dbContext.Productos.Add(perro);
            _dbContext.SaveChanges();
        }
示例#2
0
        public void SalidaTest_ExistenciaSolicitadaMenorAExistenciaGuardada()
        {
            //Arrange
            var productoSimple = ProductoMother.CreateProducto("Pan");
            //Act
            var response = _salidaProductoSimpleService.Salida(new SalidaProductoSimpleRequest(productoSimple.Id, productoSimple.Nombre, 2, productoSimple.Precio, productoSimple.Costo));

            //Assert
            Assert.AreEqual("Producto simple actualizado", response.Mensaje);
        }
        public void SalidaTest_ExistenciaIgualACero()
        {
            //Arrange
            var producto = ProductoMother.CreateProductoCompuesto("Perro Cliente");
            //Act
            var response = _SalidaProductoCompuestoService.Salida(new SalidaProductoCompuestoRequest(producto.Id, producto.Nombre, 0, producto.Precio, producto.Costo, producto.Productos));

            //Assert
            Assert.AreEqual("Producto compuesto no fue actualizado", response.Mensaje);
        }
        public void EntradaTest_ExistenciaIgualACero()
        {
            //Arrange
            var productoSimple = ProductoMother.CreateProducto("Pan");

            //Act
            var response = _productosimpleservice.Entrada(new EntradaProductoSimpleRequest(productoSimple.Id, productoSimple.Nombre, 0, productoSimple.Precio, productoSimple.Costo));

            //Assert
            Assert.AreEqual("Producto simple no fue actualizado", response.Mensaje);
        }
        public void SalidaTest_ExistenciaSolicitadaMayorAExistenciaGuardada()
        {
            //Arrange
            var producto = ProductoMother.CreateProductoCompuesto("Perror caliente");

            //Act
            var response = _SalidaProductoCompuestoService.Salida(new SalidaProductoCompuestoRequest(producto.Id, producto.Nombre, 20, producto.Precio, producto.Costo, producto.Productos));

            //Assert
            Assert.AreEqual("Producto compuesto actualizado", response.Mensaje);
        }
        public void EntradaTest_ExistenciaSolicitadaMenorAExistenciaGuardada()
        {
            //Arrange
            var productoSimple = ProductoMother.CreateProducto("Pan");

            _dbContext.ProductoSimples.Add(productoSimple);
            _dbContext.SaveChanges();

            //Act
            var response = _entradaProductoSimpleService.Entrada(new EntradaProductoSimpleRequest(productoSimple.Id, productoSimple.Nombre, 2, productoSimple.Precio, productoSimple.Costo));

            //Assert
            Assert.AreEqual("Producto simple actualizado", response.Mensaje);

            //
            //Revertir
            _dbContext.ProductoSimples.Remove(productoSimple);
            _dbContext.SaveChanges();
        }
        public void EntradaTest_ProductoNoExiste()
        {
            //Arrange
            var productoSimple = ProductoMother.CreateProducto("Pan");

            _dbContext.ProductoSimples.Add(productoSimple);
            _dbContext.SaveChanges();

            //Act
            var response = _entradaProductoSimpleService.Entrada(new EntradaProductoSimpleRequest(10, productoSimple.Nombre, 0, productoSimple.Precio, productoSimple.Costo));

            //Assert
            Assert.AreEqual("Producto simple no encontrado", response.Mensaje);

            //
            //Revertir
            _dbContext.ProductoSimples.Remove(productoSimple);
            _dbContext.SaveChanges();
        }
        public void SalidaTest_ExistenciaIgualACero()
        {
            //Arrange
            var productoSimple = ProductoMother.CreateProducto("Pan");

            _dbContext.ProductoSimples.Add(productoSimple);
            _dbContext.SaveChanges();

            //Act
            var response = _salidaProductoSimpleService.Salida(new SalidaProductoSimpleRequest(productoSimple.Id, productoSimple.Nombre, 0, productoSimple.Precio, productoSimple.Costo));

            //Assert
            Assert.AreEqual("Producto simple no fue actualizado", response.Mensaje);

            //
            //Revertir
            _dbContext.ProductoSimples.Remove(productoSimple);
            _dbContext.SaveChanges();
        }
        public void SalidaTest_ExistenciaSolicitadaMenorAExistenciaGuardada()
        {
            //Arrange
            var producto = ProductoMother.CreateProductoCompuesto("Pan");

            _dbContext.ProductoCompuestos.Add(producto);
            _dbContext.SaveChanges();

            //Act
            var response = _salidaProductoCompuestoService.Salida(new SalidaProductoCompuestoRequest(producto.Id, producto.Nombre, 2, producto.Precio, producto.Costo, producto.Productos));

            //Assert
            Assert.AreEqual("Producto compuesto actualizado", response.Mensaje);

            //
            //Revertir
            _dbContext.ProductoCompuestos.Remove(producto);
            _dbContext.SaveChanges();
        }
        public void SalidaTest_ProductoNoExiste()
        {
            //Arrange
            var producto = ProductoMother.CreateProductoCompuesto("Pan");

            _dbContext.ProductoCompuestos.Add(producto);
            _dbContext.SaveChanges();

            //Act
            var response = _salidaProductoCompuestoService.Salida(new SalidaProductoCompuestoRequest(10, producto.Nombre, 0, producto.Precio, producto.Costo, producto.Productos));

            //Assert
            Assert.AreEqual("Producto compuesto no encontrado", response.Mensaje);

            //
            //Revertir
            _dbContext.ProductoCompuestos.Remove(producto);
            _dbContext.SaveChanges();
        }