Beispiel #1
0
        public void GenarateData(DataContext data)
        {
            Client c1 = new Client("Artur", "Rojek", "1");

            data.clients.Add(c1);
            Client c2 = new Client("John", "Rambo", "2");

            data.clients.Add(c2);
            Client c3 = new Client("Robert", "Kubica", "3");

            data.clients.Add(c3);
            Client c4 = new Client("Bartek", "Stasiak", "4");

            data.clients.Add(c3);

            Baking b1 = new Baking(1, 2.5, BakingType.bun);

            data.catalog.products.Add(1, b1);
            Baking b2 = new Baking(2, 3.1, BakingType.bagel);

            data.catalog.products.Add(2, b2);
            Baking b3 = new Baking(3, 12.9, BakingType.cake);

            data.catalog.products.Add(3, b3);
            Baking b4 = new Baking(4, 0.2, BakingType.cookie);

            data.catalog.products.Add(4, b4);

            data.shop.catalog = data.catalog;

            for (int i = 1; i <= data.catalog.products.Count; i++)
            {
                data.shop.inventory.Add(data.catalog.products[i].Id, 10);
            }
        }
Beispiel #2
0
        public void BakingTest()
        {
            Baking baking = new Baking(58, 6.7, BakingType.cookie);

            service.AddBaking(baking);
            Assert.AreEqual(baking, service.GetBakingById(58));
            service.DeleteBaking(58);
        }
Beispiel #3
0
        public void UpdateBakingInfo()
        {
            Baking temp = repository.GetBaking(2);

            Assert.AreEqual(3.1, temp.Price);
            Baking c = new Baking(2, 3.5, BakingType.bagel);

            repository.UpdateBakingInfo(c);
            temp = repository.GetBaking(2);
            Assert.AreEqual(3.5, temp.Price);
        }
Beispiel #4
0
        public void AddAndGetBaking()
        {
            Baking c = new Baking(999, 12.5, BakingType.bagel);

            Assert.AreEqual(repository.GetBakingsNumber(), 4);
            repository.AddBaking(c);
            Assert.AreEqual(repository.GetBakingsNumber(), 5);
            Baking temp = repository.GetBaking(999);

            Assert.AreEqual(temp, c);
        }
Beispiel #5
0
        public void GenarateData(DataContext data)
        {
            for (int i = 1; i <= 9; i++)
            {
                Baking baking = new Baking(i, randomPrice(5.00, 15.90), randomBakingType());
                data.catalog.products.Add(i, baking);

                Client client = new Client(GenerateRandomString(6), GenerateRandomString(13), i.ToString());
                data.clients.Add(client);
            }
        }
Beispiel #6
0
        public void NewBatchTest()
        {
            Client supplier = new Client("Bobby", "Burger", "8");

            service.AddClient(supplier);
            Baking   baking = new Baking(997, 4.20, BakingType.bagel);
            DateTime now    = DateTime.Now;

            service.AddandUpdate(baking, 0);
            int stateThen = service.GetStateOfBaking(997);

            service.NewBatch("8", 997, now, 112);
            Assert.AreEqual(stateThen + 112, service.GetStateOfBaking(997));
        }
Beispiel #7
0
        public void BuyBakingsTest()
        {
            Client client = new Client("Amadeus", "Gola", "5");

            service.AddClient(client);
            Baking   baking = new Baking(86, 8.7, BakingType.bun);
            DateTime now    = DateTime.Now;

            service.AddandUpdate(baking, 50);
            int stateThen = service.GetStateOfBaking(86);

            service.BuyBaking("5", 86, now, 17);
            Assert.AreEqual(stateThen - 17, service.GetStateOfBaking(86));
        }
Beispiel #8
0
        public void BuyBaking(string customerId, int bakingId, DateTime dayOfBuying, int amount)
        {
            Client client     = repository.GetClient(customerId);
            Baking baking     = repository.GetBaking(bakingId);
            int    amountLeft = GetStateOfBaking(bakingId) - amount;

            if (GetStateOfBaking(bakingId) < amount)
            {
                throw new InvalidOperationException("There is not enough bakings in the shop.");
            }

            BuyingEvent buyEvent = new BuyingEvent(customerId, repository.GetState(), client, dayOfBuying);

            repository.AddEvent(buyEvent);
            UpdateBakingStateInfo(bakingId, amountLeft);
        }
Beispiel #9
0
        private double TakeBakingValue()
        {
            Baking baking = (Baking)Enum
                            .Parse(typeof(Baking), this.BakingTechnique.ToLower());

            double bakingValue = 1.0;

            switch (baking)
            {
            case Baking.crispy:
                bakingValue = 0.9;
                break;

            case Baking.chewy:
                bakingValue = 1.1;
                break;

            case Baking.homemade:
                bakingValue = 1.0;
                break;
            }

            return(bakingValue);
        }
Beispiel #10
0
 public void AddBaking(Baking baking)
 {
     repository.AddBaking(baking);
 }
Beispiel #11
0
 public void AddandUpdate(Baking baking, int amount)
 {
     AddBaking(baking);
     UpdateBakingStateInfo(baking.Id, amount);
 }