/// <summary>
        /// Get all differnt items in product list
        /// </summary>
        /// <returns></returns>
        public static List<Product> GetProducts()
        {
            // create List type object for Product
            List<Product> lstProducts = new List<Product>();

            // start LawnMowerItems collection and add to  Product
            List<Lawnmower> lstLawnmower = new LawnmowerRepository().GetAll().ToList();
            List<Product> lstProductLawnmower = lstLawnmower.ConvertAll(item => new Product
            {
                Id = item.Id,
                Name = item.Name,
                Price = item.Price,
                Type = "Lawnmower"
            });
            lstProducts.AddRange(lstProductLawnmower);
            // End LawnMoverItems

            // start Phonecase items collection and add to Product
            List<PhoneCase> lstPhoneCase = new PhoneCaseRepository().GetAll().ToList();
            List<Product> lstProductPhoneCase = lstPhoneCase.ConvertAll(item => new Product
            {
                Id = item.Id,
                Name = item.Name,
                Price = item.Price,
                Type = "Phone Case"
            });
            lstProducts.AddRange(lstProductPhoneCase);
            // End Phonecase items

            // start TShirt items collection and add to Product
            List<TShirt> lstTShirt = new TShirtRepository().GetAll().ToList();
            List<Product> lstProductTShirt = lstTShirt.ConvertAll(item => new Product
            {
                Id = item.Id,
                Name = item.Name,
                Price = item.Price,
                Type = "T-Shirt"
            });
            lstProducts.AddRange(lstProductTShirt);
            // End TShirt Items

            return lstProducts;
        }
        public static List <Product> GetInUSDollars()
        {
            var l = new LawnmowerRepository().GetAll();
            var p = new PhoneCaseRepository().GetAll();
            var t = new TShirtRepository().GetAll();

            var ps = new List <Product>();

            foreach (var i in l)
            {
                ps.Add(new Product()
                {
                    Id    = i.Id,
                    Name  = i.Name,
                    Price = i.Price * 0.76,
                    Type  = "Lawnmower"
                });
            }

            foreach (var i in p)
            {
                ps.Add(new Product()
                {
                    Id    = i.Id,
                    Name  = i.Name,
                    Price = i.Price * 0.76,
                    Type  = "Phone Case"
                });
            }

            foreach (var i in t)
            {
                ps.Add(new Product()
                {
                    Id    = i.Id,
                    Name  = i.Name,
                    Price = i.Price * 0.76,
                    Type  = "T-Shirt"
                });
            }

            return(ps);
        }
예제 #3
0
        public void TestRate()
        {
            var consolidator = new ProductDataConsolidator();

            var l = new LawnmowerRepository();
            var p = new PhoneCaseRepository();
            var t = new TShirtRepository();

            var lawnmowers = l.GetAll();
            var phoneCases = p.GetAll();
            var tshirts    = t.GetAll();

            consolidator.Consolidate(lawnmowers);
            consolidator.Consolidate(phoneCases);
            consolidator.Consolidate(tshirts);

            var products = consolidator.GetAll();

            var rate = 0.67;

            consolidator.Rate = 0.67;

            var i = 0;

            foreach (var lawnmower in lawnmowers)
            {
                AssertEqual(products[i++], lawnmower, rate);
            }


            foreach (var phoneCase in phoneCases)
            {
                AssertEqual(products[i++], phoneCase, rate);
            }


            foreach (var tshirt in tshirts)
            {
                AssertEqual(products[i++], tshirt, rate);
            }
        }
        public static List<Product> GetInEuros()
        {
            var l = new LawnmowerRepository().GetAll();
            var p = new PhoneCaseRepository().GetAll();
            var t = new TShirtRepository().GetAll();

            var ps = new List<Product>();

            foreach (var i in l) {
                ps.Add(new Product() {
                    Id = i.Id,
                    Name = i.Name,
                    Price = i.Price * 0.67,
                    Type = "Lawnmower"
                });
            }

            foreach (var i in p) {
                ps.Add(new Product() {
                    Id = i.Id,
                    Name = i.Name,
                    Price = i.Price * 0.67,
                    Type = "Phone Case"
                });
            }

            foreach (var i in t) {
                ps.Add(new Product() {
                    Id = i.Id,
                    Name = i.Name,
                    Price = i.Price * 0.67,
                    Type = "T-Shirt"
                });
            }

            return ps;
        }
예제 #5
0
 public ProductDataConsolidator()
 {
     _lawnmowerRepository = new LawnmowerRepository();
     _phoneCaseRepository = new PhoneCaseRepository();
     _tShirtRepository    = new TShirtRepository();
 }