def test_unfavourite_a_recipe(self): """ Test to ensure we can decrement a recipe's number of favourites """ recipe_id = "5b8fc23a59d1979fc3608b0b" num_favs = app.get_recipe(recipe_id)['favourites'] app.unfavourite_a_recipe(recipe_id) self.assertEqual(app.get_recipe(recipe_id)['favourites'], num_favs - 1)
def test_get_recipe(self): """ Test to ensure we can get a recipe from the database by its id """ recipe_id = '5b91483146073f953359fce8' self.assertEqual( app.get_recipe(recipe_id)['name'], 'Cinnamon Chocolate Soufflé')
def test_get_user_favourites(self): """ Test to ensure we can get users' favourite recipes """ username = "******" self.assertIn(app.get_recipe('5b91483146073f953359fce8'), app.get_user_favourites(username))
def test_update_recipe(self): """ Test to ensure we can update a recipe in the database """ recipe_id = '5b91483146073f953359fce8' recipe_form = { "name": "Chocolate Soufflé", "hours": 0, "minutes": 30, "description": "So easy to make and so yummy!", "ingredients": "A little melted butter and caster sugar for coating the souffle dish\r\n75g (2 1/2 oz) plain chocolate\r\n1 tablespoon milk\r\n50g (2 oz) butter\r\n40g (1 1/2 oz) plain flour\r\n300ml milk\r\n1/2 tsp cinnamon powder\r\n5 eggs, seperated into yolks and whites\r\n2 tablespoons of caster sugar\r\n", "method": "Preheat over to 200 degrees C / gas mark 6.\r\nGrease an 8 inch souffle dish (or 4 small individual ramekins) with melted butter and dust with sugar.\r\nPut 1 tablespoon of milk and the chocolate in a heat-proof bowl and melt over hot boiling water. Set aside.\r\nMelt butter in a saucepan over gentle heat, then add the flour all at once; mix well and remove from the heat.\r\nAdd milk into flour mixture a little at a time, stirring constantly until the mixture forms a creamy paste.\r\nAdd melted chocolate, cinnamon and all five egg yolks. Mix well and set aside.\r\nWhisk five egg whites and add sugar, 1 tablespoon at a time. Keep whisking until egg whites look like foamy bubbles.\r\nSlowly add whisked egg whites into chocolate mixture. Pour into souffle dish and bake for 20 minutes.\r\nServe immediately.\r\n", "image_url": "http://ukcdn.ar-cdn.com/recipes/port250/67608ebb-163e-4682-b2f2-66e982331c3b.jpg", "cuisine": "french", "type": "dessert" } app.update_recipe(recipe_id, recipe_form) self.assertEqual( app.get_recipe(recipe_id)['name'], 'Chocolate Soufflé') #reset after test recipe_form['name'] = 'Cinnamon Chocolate Soufflé' app.update_recipe(recipe_id, recipe_form)
def test_delete_recipe(self): """ Test to ensure we can remove a recipe from the database """ recipe_id = '000000000000000000000001' username = '******' app.delete_recipe(recipe_id, username) self.assertNotIn(app.get_recipe(recipe_id), list(app.get_recipes()))
def test_add_user_recipe(self): """ Test to ensure we can add a recipe id to a user's list of recipes """ username = "******" user_id = "5b648d93fb6fc072a40f6d8f" recipe_id = "5b8fc23a59d1979fc3608b0a" # remove recipe before test app.remove_user_recipe_from_list(user_id, 'my_recipes', recipe_id) app.add_user_recipe_to_list(user_id, 'my_recipes', recipe_id) self.assertIn(app.get_recipe(recipe_id), list(app.get_user_recipes(username)))