예제 #1
0
    def get_main_list(self):
        burger = SingleBurger()

        ingredients = []

        for ingredient in burger.get_ingredient_prices():
            ingredients.append(ingredient)

        return ingredients
예제 #2
0
def test_successful_single_burger(system):
    burger = SingleBurger()
    burger.add_ingredient("Sesame bun", 1)
    burger.add_ingredient("Muffin bun", 1)
    burger.add_ingredient("Beef patty", 1)

    system.add_to_order(burger, 1)

    assert (burger.num_buns() == 2)
    assert (burger.num_patties() == 1)
    assert (burger.get_price() == 5)
    assert (burger.is_valid_main())

    assert (len(system.get_orders()) == 1)
    assert (len(system.get_order(1).get_order_list()) == 1)
    assert (system.get_order(1).get_status() == False)
    assert (system.get_order(1).get_confirmed() == False)

    assert (system.get_order(1).total_price() == 5)
예제 #3
0
def test_multiple_items(system):

    side1 = Side("Small fries")
    side2 = Side("Cookie")

    burger = SingleBurger()
    burger.add_ingredient("Sesame bun", 1)
    burger.add_ingredient("Muffin bun", 1)
    burger.add_ingredient("Beef patty", 1)

    wrap = Wrap()
    wrap.add_ingredient("Chicken patty", 1)
    wrap.add_ingredient("Cheddar cheese", 3)
    wrap.add_ingredient("Aioli sauce", 1)

    drink1 = Drink("Fanta can")
    drink2 = Drink("Water bottle")

    system.add_to_order(drink1, 1)
    system.add_to_order(drink2, 1)
    system.add_to_order(wrap, 1)
    system.add_to_order(burger, 1)
    system.add_to_order(side1, 1)
    system.add_to_order(side2, 1)

    assert (len(system.get_orders()) == 1)
    assert (system.get_order(1).get_status() == False)
    assert (system.get_order(1).get_confirmed() == False)
    assert (len(system.get_order(1).get_order_list()) == 6)

    assert (system.get_order(1).total_price() == 21.2)
예제 #4
0
def test_single_not_enough_patties(system):
    burger = SingleBurger()
    burger.add_ingredient("Sesame bun", 1)
    burger.add_ingredient("Muffin bun", 1)

    system.add_to_order(burger, 1)

    assert (burger.num_buns() == 2)
    assert (burger.num_patties() == 0)
    assert (burger.get_price() == 3)
    assert (len(burger.get_errors()) == 1)

    assert (len(system.get_orders()) == 1)
    assert (system.get_order(1).get_status() == False)
    assert (system.get_order(1).get_confirmed() == False)
    assert (len(system.get_order(1).get_order_list()) == 0)

    assert (system.get_order(1).total_price() == 0)
예제 #5
0
def test_single_no_patties_no_buns(system):
    burger = SingleBurger()

    system.add_to_order(burger, 1)

    assert (burger.num_buns() == 0)
    assert (burger.num_patties() == 0)
    assert (burger.get_price() == 1)
    assert (len(burger.get_errors()) == 2)

    assert (len(system.get_orders()) == 1)
    assert (system.get_order(1).get_status() == False)
    assert (system.get_order(1).get_confirmed() == False)
    assert (len(system.get_order(1).get_order_list()) == 0)

    assert (system.get_order(1).total_price() == 0)
예제 #6
0
def test_adding_first_order():
    system = System()
    assert(len(system.get_orders()) == 0)
    assert(len(system.get_completed()) == 0)
    order = system.new_order(system.generate_id())
    burger = SingleBurger()
    burger.add_ingredient("Sesame bun", 1)
    burger.add_ingredient("Muffin bun", 1)
    burger.add_ingredient("Beef patty", 1)
    order.add_item(burger)
    order.add_item(Drink("Water bottle"))
    order.add_item(Side("Small fries"))
    order.add_item(Side("Nuggets 3P"))
    success,orderID = system.confirm_order(order)
    assert(success == True)
    assert(orderID == 1)
    assert(len(system.get_orders()) == 1)
    assert(len(system.get_completed()) == 0)
예제 #7
0
def system_fixture():
    system = System()

    ID = system.generate_id()
    assert (ID == 1)
    system.new_order(ID)

    burger = SingleBurger()
    burger.add_ingredient("Sesame bun", 1)
    burger.add_ingredient("Muffin bun", 1)
    burger.add_ingredient("Beef patty", 1)
    burger.add_ingredient("Lettuce", 3)
    burger.add_ingredient("Tomatoes", 2)
    system.add_to_order(burger, ID)
    system.add_to_order(Drink('Water bottle'), ID)
    system.add_to_order(Side("Cookie"), ID)

    assert (system.get_order(ID).total_price() == 13.5)
    success, ID = system.confirm_order(system.get_order(ID))
    assert (success == True)
    assert (ID == 1)
    system.update_status(1)

    ID = system.generate_id()
    assert (ID == 2)
    system.new_order(ID)

    burger = DoubleBurger()
    burger.add_ingredient("Sesame bun", 2)
    burger.add_ingredient("Muffin bun", 1)
    burger.add_ingredient("Beef patty", 2)
    burger.add_ingredient("Lettuce", 3)
    burger.add_ingredient("Tomatoes", 2)
    burger.add_ingredient("BBQ sauce", 2)
    system.add_to_order(burger, ID)

    system.add_to_order(Drink('Coke can'), ID)
    system.add_to_order(Side("Medium fries"), ID)

    assert (system.get_order(ID).total_price() == 17.4)
    success, ID = system.confirm_order(system.get_order(ID))
    assert (success == True)
    assert (ID == 2)

    ID = system.generate_id()
    assert (ID == 3)
    system.new_order(ID)
    for i in range(5):
        system.add_to_order(Drink("Coke can"), ID)
        system.add_to_order(Side("Cookie"), ID)

    assert (system.get_order(ID).total_price() == 20)
    success, ID = system.confirm_order(system.get_order(ID))
    assert (success == True)
    assert (ID == 3)
    system.update_status(3)

    return system
예제 #8
0
def system_fixture():
    system = System()

    order = system.new_order(system.generate_id())
    burger = SingleBurger()
    burger.add_ingredient("Sesame bun", 1)
    burger.add_ingredient("Muffin bun", 1)
    burger.add_ingredient("Beef patty", 1)

    order.add_item(burger)
    order.add_item(Drink("Water bottle"))
    order.add_item(Side("Small fries"))
    order.add_item(Side("Nuggets 3P"))

    order2 = system.new_order(system.generate_id())
    burger2 = SingleBurger()
    burger2.add_ingredient("Sesame bun", 1)
    burger2.add_ingredient("Muffin bun", 1)
    burger2.add_ingredient("Beef patty", 1)

    order2.add_item(burger)
    order2.add_item(Drink("Coke Can"))
    order2.add_item(Side("Medium fries"))
    order2.add_item(Side("Nuggets 6P"))

    return system
예제 #9
0
def system_fixture():
    system = System()

    ID = system.generate_id()
    assert (ID == 1)
    system.new_order(ID)

    burger = SingleBurger()
    burger.add_ingredient("Sesame bun", 1)
    burger.add_ingredient("Muffin bun", 1)
    burger.add_ingredient("Beef patty", 1)
    burger.add_ingredient("Lettuce", 3)
    burger.add_ingredient("Tomatoes", 2)
    system.add_to_order(burger, ID)
    system.add_to_order(Drink('Water bottle'), ID)
    system.add_to_order(Side("Cookie"), ID)

    assert (system.get_order(ID).total_price() == 13.5)

    ID = system.generate_id()
    assert (ID == 2)
    system.new_order(ID)

    burger = DoubleBurger()
    burger.add_ingredient("Sesame bun", 2)
    burger.add_ingredient("Muffin bun", 1)
    burger.add_ingredient("Beef patty", 2)
    burger.add_ingredient("Lettuce", 3)
    burger.add_ingredient("Tomatoes", 2)
    burger.add_ingredient("BBQ sauce", 2)
    system.add_to_order(burger, ID)

    system.add_to_order(Drink('Coke can'), ID)
    system.add_to_order(Side("Medium fries"), ID)

    assert (system.get_order(ID).total_price() == 17.4)

    ID = system.generate_id()
    assert (ID == 3)
    system.new_order(ID)
    for i in range(20):
        system.add_to_order(Drink("Coke can"), ID)
        system.add_to_order(Side("Cookie"), ID)

    ID = system.generate_id()
    assert (ID == 4)
    system.new_order(ID)

    wrap = Wrap()
    wrap.add_ingredient("Chicken patty", 1)
    wrap.add_ingredient("Cheddar cheese", 3)
    wrap.add_ingredient("Aioli sauce", 1)
    system.add_to_order(wrap, ID)

    assert (system.get_order(ID).total_price() == 5.7)

    return system