public void IsMenuContainingNoMenuItemsByDefaultTest() { var aMenu = new Menu(); Assert.IsNotNull(aMenu.Items, "Upon initialization, the Menu shall not contain any Items!"); Assert.AreEqual(0, aMenu.Items.Count, "Upon initializatin, the Menu shall contain zero Items!"); }
public void IsMenuHandlingOfTheMenuItemsCorrectTest() { var someMenuItems = new List<MenuItem>(); int numberOfMenuItems = new Random().Next(1, 100); for (int idx = 0; idx < numberOfMenuItems; idx++) { var aMenuItem = new Mock<MenuItem>(); aMenuItem.Setup(m => m.Price).Returns(new Random().Next(0, 100)); someMenuItems.Add(aMenuItem.Object); } var aMenu = new Menu(); aMenu.Items.AddRange(someMenuItems); Assert.AreEqual(someMenuItems.Count, aMenu.Items.Count, "The number of Items contained within the Menu is not correct!"); foreach (MenuItem aMenuItem in someMenuItems) { Assert.Contains(aMenuItem, aMenu.Items, "Invalid Menu Item was found within the Menu!"); } }
public void IsMenuPriceCorrectAsLongItContainsOneSingleMenuItemTest() { var aMenuItem = new Mock<MenuItem>(); aMenuItem.Setup(m => m.Price).Returns(2); var aMenu = new Menu(); aMenu.Items.Add(aMenuItem.Object); Assert.AreEqual(aMenuItem.Object.Price, aMenu.Price, "The Price of the Menu is not correct!"); }
public void IsMenuPriceCorrectAsLongItContainsMultipleMenuItemsTest() { var someMenuItems = new List<MenuItem>(); decimal expectedMenuItemPrice = 0; for (int idx = 0; idx < new Random().Next(2, 100); idx++) { var aMenuItem = new Mock<MenuItem>(); aMenuItem.Setup(m => m.Price).Returns(new Random().Next(0, 50)); expectedMenuItemPrice += aMenuItem.Object.Price; someMenuItems.Add(aMenuItem.Object); } var aMenu = new Menu(); aMenu.Items.AddRange(someMenuItems); Assert.AreEqual(expectedMenuItemPrice, aMenu.Price, "The Price of the Menu is not correct!"); }