public void IsConsumedProductExists_Pass()
        {
            // arrange
            var contextOptions = new DbContextOptionsBuilder <DionysContext>()
                                 .UseInMemoryDatabase("IsConsumedProductExists_Pass")
                                 .Options;

            var consumedProduct = new ConsumedProduct
            {
                ProductId = Guid.Parse("274684A2-D52B-4FB8-8BAD-1F065BA76071"),
                Timestamp = DateTime.UtcNow,
            };

            using (var ctx = new DionysContext(contextOptions))
            {
                ctx.ConsumedProducts.Add(consumedProduct);
                ctx.SaveChanges();
            }

            // act
            bool result;

            using (var ctx = new DionysContext(contextOptions))
            {
                var service = new ConsumedProductService(ctx);
                result = service.IsExist(consumedProduct.Id);
            }

            // assert
            Assert.That(result == true);
        }
Ejemplo n.º 2
0
        public void Update(ConsumedProduct consumedProduct)
        {
            Validate(consumedProduct);

            // Do not update assoc product (member)
            consumedProduct.Product = null;
            _context.ConsumedProducts.Update(consumedProduct);

            _context.SaveChanges();
        }
Ejemplo n.º 3
0
        public void Create(ConsumedProduct consumedProduct)
        {
            Validate(consumedProduct);

            // Find assoc product
            var product = _context.Products.Find(consumedProduct.ProductId);

            consumedProduct.Product = product;
            _context.ConsumedProducts.Add(consumedProduct);

            _context.SaveChanges();
        }
Ejemplo n.º 4
0
        public bool TryCreate(ConsumedProduct consumedProduct)
        {
            try
            {
                if (!Validate(consumedProduct))
                {
                    return(false);
                }

                // Find assoc product
                consumedProduct.Product = _context.Products.Find(consumedProduct.Product.Id);
                _context.ConsumedProducts.Add(consumedProduct);

                _context.SaveChanges();
                return(true);
            }
            catch (DbUpdateException)
            {
                return(false);
            }
        }
Ejemplo n.º 5
0
 public void Delete(ConsumedProduct consumedProduct)
 {
     _context.ConsumedProducts.Remove(consumedProduct);
     _context.SaveChanges();
 }
Ejemplo n.º 6
0
 private bool Validate(ConsumedProduct consumedProduct)
 {
     return(_context.Products.Any(p => !p.DeletedAt.HasValue && consumedProduct.ProductId == p.Id));
 }
Ejemplo n.º 7
0
 public Product GetAssociatedProduct(ConsumedProduct consumedProduct)
 {
     return(_context.ConsumedProducts.Find(consumedProduct.Id).Product);
 }