コード例 #1
0
 /// <summary>
 /// Grabs the Menu for Cowboy Cafe on each reload
 /// </summary>
 public void OnGet()
 {
     // Filters the Menu variable with Where statements
     Menu = CCMenu.All();
     if (SearchTerms != null)
     {
         Menu = Menu.Where(menu =>
                           menu.ToString() != null &&
                           menu.ToString().Contains(SearchTerms, StringComparison.CurrentCultureIgnoreCase)
                           );
     }
     if (TypesOfItems != null && TypesOfItems.Length != 0)
     {
         Menu = Menu.Where(menu =>
                           menu.Type != null &&
                           TypesOfItems.Contains(menu.Type)
                           );
     }
     if (CaloriesMin != null || CaloriesMax != null)
     {
         Menu = Menu.Where(menu =>
                           menu.Calories != null &&
                           menu.Calories >= CaloriesMin ||
                           menu.Calories <= CaloriesMax
                           );
     }
     if (PriceMin != null || PriceMax != null)
     {
         Menu = Menu.Where(menu =>
                           menu.Price != null &&
                           menu.Price >= PriceMin ||
                           menu.Price <= PriceMax
                           );
     }
 }
コード例 #2
0
ファイル: MenuTest.cs プロジェクト: schwederm/cowboy-cafe
        public void VerifyingPriceMaxFilter()
        {
            var    menu     = CCMenu.All();
            double PriceMax = 1.50;
            var    results  = CCMenu.FilterByPrice(menu, null, PriceMax);
            var    Results  = new List <string>();

            foreach (IOrderItem item in results)
            {
                Results.Add(item.ToString());
            }

            var items = new List <IOrderItem>
            {
                new CowboyCoffee(Size.Small),
                new CowboyCoffee(Size.Medium),
                new TexasTea(Size.Small),
                new TexasTea(Size.Medium),
                new Water()
            };
            var Items = new List <string>();

            foreach (IOrderItem item in items)
            {
                Items.Add(item.ToString());
            }

            foreach (string item in Items)
            {
                Assert.Contains(item, Results);
            }
        }
コード例 #3
0
ファイル: MenuTest.cs プロジェクト: schwederm/cowboy-cafe
        public void VerifyingPriceMinAndMaxFilter()
        {
            var    menu     = CCMenu.All();
            double PriceMin = 2.00;
            double PriceMax = 4.00;
            var    results  = CCMenu.FilterByPrice(menu, PriceMin, PriceMax);
            var    Results  = new List <string>();

            foreach (IOrderItem item in results)
            {
                Results.Add(item.ToString());
            }

            var items = new List <IOrderItem>
            {
                new ChiliCheeseFries(Size.Medium),
                new ChiliCheeseFries(Size.Large),
                new JerkedSoda(Size.Medium),
                new JerkedSoda(Size.Large),
                new TexasTea(Size.Large)
            };
            var Items = new List <string>();

            foreach (IOrderItem item in items)
            {
                Items.Add(item.ToString());
            }

            foreach (string item in Items)
            {
                Assert.Contains(item, Results);
            }
        }
コード例 #4
0
ファイル: MenuTest.cs プロジェクト: schwederm/cowboy-cafe
        public void VerifyingCaloriesMinAndMaxFilter()
        {
            var  menu        = CCMenu.All();
            uint CaloriesMin = 300;
            uint CaloriesMax = 500;
            var  results     = CCMenu.FilterByCalories(menu, CaloriesMin, CaloriesMax);
            var  Results     = new List <string>();

            foreach (IOrderItem item in results)
            {
                Results.Add(item.ToString());
            }

            var items = new List <IOrderItem>
            {
                new DakotaDoubleBurger(),
                new BakedBeans(Size.Small),
                new BakedBeans(Size.Medium),
                new BakedBeans(Size.Large),
                new PanDeCampo(Size.Large)
            };
            var Items = new List <string>();

            foreach (IOrderItem item in items)
            {
                Items.Add(item.ToString());
            }

            foreach (string item in Items)
            {
                Assert.Contains(item, Results);
            }
        }
コード例 #5
0
ファイル: MenuTest.cs プロジェクト: schwederm/cowboy-cafe
        public void VerifyingPriceMinFilter()
        {
            var    menu     = CCMenu.All();
            double PriceMin = 6.00;
            var    results  = CCMenu.FilterByPrice(menu, PriceMin, null);
            var    Results  = new List <string>();

            foreach (IOrderItem item in results)
            {
                Results.Add(item.ToString());
            }

            var items = new List <IOrderItem>
            {
                new CowpokeChili(),
                new RustlersRibs(),
                new TexasTripleBurger()
            };
            var Items = new List <string>();

            foreach (IOrderItem item in items)
            {
                Items.Add(item.ToString());
            }

            foreach (string item in Items)
            {
                Assert.Contains(item, Results);
            }
        }
コード例 #6
0
ファイル: MenuTest.cs プロジェクト: schwederm/cowboy-cafe
        public void VerifyingCaloriesMinFilter()
        {
            var  menu        = CCMenu.All();
            uint CaloriesMin = 600;
            var  results     = CCMenu.FilterByCalories(menu, CaloriesMin, null);
            var  Results     = new List <string>();

            foreach (IOrderItem item in results)
            {
                Results.Add(item.ToString());
            }

            var items = new List <IOrderItem>
            {
                new RustlersRibs(),
                new TexasTripleBurger(),
                new ChiliCheeseFries(Size.Large),
                new CornDodgers(Size.Medium),
                new CornDodgers(Size.Large)
            };
            var Items = new List <string>();

            foreach (IOrderItem item in items)
            {
                Items.Add(item.ToString());
            }

            foreach (string item in Items)
            {
                Assert.Contains(item, Results);
            }
        }
コード例 #7
0
ファイル: MenuTest.cs プロジェクト: schwederm/cowboy-cafe
        public void VerifyingEntreeSideCategoryFilter()
        {
            var filters = new List <string>
            {
                "Entree",
                "Side"
            };
            var menu    = CCMenu.All();
            var results = CCMenu.FilterByCategory(menu, filters);
            var Results = new List <string>();

            foreach (IOrderItem item in results)
            {
                Results.Add(item.ToString());
            }

            var entrees = CCMenu.Entrees();
            var sides   = CCMenu.Sides();
            var items   = new List <IOrderItem>();

            items.AddRange(entrees);
            items.AddRange(sides);
            var Items = new List <string>();

            foreach (IOrderItem item in items)
            {
                Items.Add(item.ToString());
            }

            foreach (string item in Items)
            {
                Assert.Contains(item, Results);
            }
        }
コード例 #8
0
ファイル: MenuTest.cs プロジェクト: schwederm/cowboy-cafe
        public void VerifyingNullCategoryFilter()
        {
            var filter  = new List <string>();
            var menu    = CCMenu.All();
            var results = CCMenu.FilterByCategory(menu, filter);
            var Results = new List <string>();

            foreach (IOrderItem item in results)
            {
                Results.Add(item.ToString());
            }

            var items = CCMenu.All();
            var Items = new List <string>();

            foreach (IOrderItem item in items)
            {
                Items.Add(item.ToString());
            }

            foreach (string item in Items)
            {
                Assert.Contains(item, Results);
            }
        }
コード例 #9
0
ファイル: MenuTest.cs プロジェクト: schwederm/cowboy-cafe
        public void VerifyingItemsAreInMenu()
        {
            var menu = CCMenu.All();
            var Menu = new List <string>();

            foreach (IOrderItem item in menu)
            {
                Menu.Add(menu.ToString());
            }

            var items = new List <IOrderItem>
            {
                new AngryChicken(),
                new BakedBeans(),
                new ChiliCheeseFries(),
                new CornDodgers(),
                new CowboyCoffee(),
                new CowpokeChili(),
                new DakotaDoubleBurger(),
                new JerkedSoda(),
                new PanDeCampo(),
                new PecosPulledPork(),
                new RustlersRibs(),
                new TexasTea(),
                new TexasTripleBurger(),
                new TrailBurger(),
                new Water()
            };
            var Items = new List <string>();

            foreach (IOrderItem item in items)
            {
                Items.Add(items.ToString());
            }

            foreach (string item in Items)
            {
                Assert.Contains(item, Menu);
            }
        }
コード例 #10
0
ファイル: MenuTest.cs プロジェクト: schwederm/cowboy-cafe
        public void VerifyingNullSearch()
        {
            string searchTerm = null;
            var    results    = CCMenu.Search(searchTerm);
            var    Results    = new List <string>();

            foreach (IOrderItem item in results)
            {
                Results.Add(item.ToString());
            }

            var items = CCMenu.All();
            var Items = new List <string>();

            foreach (IOrderItem item in items)
            {
                Items.Add(item.ToString());
            }

            foreach (string item in Items)
            {
                Assert.Contains(item, Results);
            }
        }