Пример #1
0
        public void TestMethod1()
        {
            _inventory = new Inventory
            {
                itemName = "Sliced Ham",
                itemCode = "SH3",
            };

            _inventoryPackingConfigure = new List <InventoryPackingConfigure>();
            _inventoryPackingConfigure.Add(new InventoryPackingConfigure
            {
                packingID = 1,
                inventory = _inventory,
                packSize  = 3,
                packPrice = 2.99
            });
            _inventoryPackingConfigure.Add(new InventoryPackingConfigure
            {
                packingID = 2,
                inventory = _inventory,
                packSize  = 5,
                packPrice = 4.49
            });
            _testPackConfig = new List <PackBreakdownViewModel>();
            _testPackConfig.Add(
                new PackBreakdownViewModel
            {
                packQuantity = 2,
                packingID    = 2,
                inventoryPackingConfigure = _inventoryPackingConfigure.Where(x => x.packingID == 2).First(),
            });
            var result = PackageSelectionHelper.GetPackBreakdown(_inventoryPackingConfigure, 10);

            Assert.AreEqual(PackageSelectionHelper.GetBreakDownSums(result), PackageSelectionHelper.GetBreakDownSums(_testPackConfig));
        }
Пример #2
0
        public async Task <ActionResult <PackQueryOutputViewModel> > GetPacksBreakDown([FromBody] CommandPromptInputViewModel _com)
        {
            var packBreakDown = new PackQueryOutputViewModel();

            var item = await _context.Inventory.Where(x => x.itemCode == _com.code).FirstOrDefaultAsync();

            if (item == null)
            {
                return(NotFound());
            }

            var packages = _context.InventoryPackingConfigure
                           .Where(x => x.itemID == item.itemID)
                           .ToList();

            if (!(packages.Count > 0))
            {
                return(null);
            }

            var packs = PackageSelectionHelper.GetPackBreakdown(packages, _com.quantity);

            var pack_sums = PackageSelectionHelper.GetBreakDownSums(packs);

            packBreakDown.totalQuantity  = pack_sums.Item1;
            packBreakDown.totalPrice     = Math.Round(pack_sums.Item2, 2);
            packBreakDown.packBreakdowns = packs;

            return(Ok(packBreakDown));
        }
Пример #3
0
        public void TestMethod2()
        {
            _inventory = new Inventory
            {
                itemName = "Yoghurt",
                itemCode = "YT2",
            };

            _inventoryPackingConfigure = new List <InventoryPackingConfigure>();
            _inventoryPackingConfigure.Add(new InventoryPackingConfigure
            {
                packingID = 1,
                inventory = _inventory,
                packSize  = 4,
                packPrice = 4.95
            });
            _inventoryPackingConfigure.Add(new InventoryPackingConfigure
            {
                packingID = 2,
                inventory = _inventory,
                packSize  = 10,
                packPrice = 9.95
            });
            _inventoryPackingConfigure.Add(new InventoryPackingConfigure
            {
                packingID = 3,
                inventory = _inventory,
                packSize  = 15,
                packPrice = 13.95
            });
            _testPackConfig = new List <PackBreakdownViewModel>();
            _testPackConfig.Add(
                new PackBreakdownViewModel
            {
                packQuantity = 4,
                packingID    = 1,
                inventoryPackingConfigure = _inventoryPackingConfigure.Where(x => x.packingID == 1).First(),
            });
            _testPackConfig.Add(
                new PackBreakdownViewModel
            {
                packQuantity = 1,
                packingID    = 3,
                inventoryPackingConfigure = _inventoryPackingConfigure.Where(x => x.packingID == 3).First(),
            });


            var result = PackageSelectionHelper.GetPackBreakdown(_inventoryPackingConfigure, 31);

            Assert.AreEqual(PackageSelectionHelper.GetBreakDownSums(result), PackageSelectionHelper.GetBreakDownSums(_testPackConfig));
        }
Пример #4
0
        public void Test1()
        {
            var connection = new SqliteConnection("DataSource=:memory:");

            connection.Open();


            try
            {
                var options = new DbContextOptionsBuilder <OnlineGroceryStoreContext>()
                              .UseSqlite(connection)
                              .Options;

                using (var _context = new OnlineGroceryStoreContext(options))
                {
                    _context.Database.EnsureCreated();
                    InventorySeedData.PopulateData(_context);
                    List <InventoryPackingConfigure> aa = _context.InventoryPackingConfigure.ToList();
                    TestOnePackConfig.Add(
                        new PackBreakdownViewModel
                    {
                        packQuantity = 2,
                        packingID    = 4,
                        inventoryPackingConfigure = _context.InventoryPackingConfigure.Where(x => x.packingID == 3).First(),
                    });
                    TestOnePackConfig.Add(
                        new PackBreakdownViewModel
                    {
                        packQuantity = 2,
                        packingID    = 3,
                        inventoryPackingConfigure = _context.InventoryPackingConfigure.Where(x => x.packingID == 3).First(),
                    });

                    Assert.Equals(PackageSelectionHelper.GetPackBreakdown(2, 28, _context), TestOnePackConfig);
                }
            }
            finally
            {
                connection.Close();
            }
        }