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)
def test_multiple_orders(system):

    system.new_order(system.generate_id())

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

    system.add_to_order(drink1, 1)
    system.add_to_order(drink2, 1)

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

    system.add_to_order(side1, 2)
    system.add_to_order(side2, 2)

    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()) == 2)
    assert (system.get_order(1).total_price() == 6)

    assert (system.get_order(2).get_status() == False)
    assert (system.get_order(2).get_confirmed() == False)
    assert (len(system.get_order(2).get_order_list()) == 2)
    assert (system.get_order(2).total_price() == 4.5)

    assert (len(system.get_orders()) == 2)
Exemple #3
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
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
Exemple #5
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
    def get_drinklist(self):
        eg_drink = Drink("Coke can")
        drinklist = []

        for key,value in eg_drink._drink_prices.items():
            drinklist.append(key)
        return drinklist
def test_successful_drink(system):
    drink1 = Drink("Fanta can")
    drink2 = Drink("Water bottle")

    system.add_to_order(drink1, 1)
    system.add_to_order(drink2, 1)

    assert (drink1.get_price() == 2)
    assert (drink1.get_name() == "Fanta can")
    assert (drink2.get_price() == 4)
    assert (drink2.get_name() == "Water bottle")

    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()) == 2)

    assert (system.get_order(1).total_price() == 6)
Exemple #8
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)
Exemple #9
0
def loadFile(fname):
    global ingredients, drinks
    count = 0
    with open(fname, 'r') as drinkFile:
        for line in drinkFile.readlines():
            lines = line.rstrip()
            #change to pointer for some reason
            lines.rstrip()
            if count == 0:
                #all ingredients on the machine
                ingredients = lines.split('\t')
                declareBottles(ingredients)
            else:
                #get drink names
                args = lines.split('\t')
                #add ingredients to the drink
                if line[0] != '\t':
                    drinks.append(Drink(args[0]))
                else:
                    del args[0]
                    drinks[len(drinks) - 1].addIngredient(args[0], args[1])
                    #print(args)
            count += 1
Exemple #10
0
from drinks import Drink, CocaCola, Milk, ChocolateMilk, WhiteMilk

generic_drink = Drink()
coke = CocaCola()
milk = Milk(2)
choc_milk = ChocolateMilk()

print("type( generic_drink ) == Drink:", end=" ")
print(type(generic_drink) == Drink)  # Prints:__________________

print("type( coke ) == Drink:", end=" ")
print(type(coke) == Drink)  # Prints:__________________

print("type( milk ) == Milk:", end=" ")
print(type(milk) == Milk)  # Prints:__________________

print("type( choc_milk ) == Milk:", end=" ")
print(type(choc_milk) == Milk)  # Prints:__________________

print("isinstance( generic_drink, Drink):", end=" ")
print(isinstance(generic_drink, Drink))  # Prints:________

print("isinstance( coke, Drink ):", end=" ")
print(isinstance(coke, Drink))  # Prints:________

print("isinstance( generic_drink, CocaCola ):", end=" ")
print(isinstance(generic_drink, CocaCola))  # Prints:________

print("isinstance( choc_milk, Drink ):", end=" ")
print(isinstance(choc_milk, Milk))  # Prints:________