def test_get_menu_with_new_value(self): new_menu_item = MenuItem(name=self.menu_item.get('name'), category=self.menu_item.get('category'), ingredients=self.menu_item.get('ingredients'), price=self.menu_item.get('price')) new_menu_item.insert() res = self.client().get('/menu') data = json.loads(res.data) self.assertEqual(res.status_code, 200) self.assertEqual(data['success'], True) self.assertTrue(len(data['menu_items']) >= 0)
def test_patch_permission(self): new_menu_item = MenuItem(name=self.menu_item.get('name'), category=self.menu_item.get('category'), ingredients=self.menu_item.get('ingredients'), price=self.menu_item.get('price')) new_menu_item.insert() menu_item_id = new_menu_item.id res = self.client().patch('/menu/{}'.format(menu_item_id, json={"price": 200})) data = json.loads(res.data) self.assertEqual(res.status_code, 401) self.assertEqual(data['success'], False)
def test_patch_menu_item(self): new_menu_item = MenuItem(name=self.menu_item.get('name'), category=self.menu_item.get('category'), ingredients=self.menu_item.get('ingredients'), price=self.menu_item.get('price')) new_menu_item.insert() menu_item_id = new_menu_item.id menu_item = MenuItem.query.filter(MenuItem.id == menu_item_id).one_or_none() self.assertIsNotNone(menu_item) res = self.client().patch('/menu/{}'.format(menu_item_id), json={"price": 100}, headers=self.chef_header) data = json.loads(res.data) self.assertEqual(res.status_code, 200) self.assertEqual(data['success'], True)
def test_delete_menu_item_bare(self): new_menu_item = MenuItem(name=self.menu_item.get('name'), category=self.menu_item.get('category'), ingredients=self.menu_item.get('ingredients'), price=self.menu_item.get('price')) new_menu_item.insert() menu_item_id = new_menu_item.id menu_item = MenuItem.query.filter(MenuItem.id == menu_item_id).one_or_none() self.assertIsNotNone(menu_item) menu_item.delete() menu_item_deleted = MenuItem.query.filter(MenuItem.id == menu_item_id).one_or_none() self.assertIsNone(menu_item_deleted) res = self.client().get('/menu') data = json.loads(res.data) self.assertEqual(res.status_code, 200) self.assertEqual(data['success'], True)
def add_menu_item(token): """Adds a new menu item to the menu.""" body = request.get_json() if body is None: abort(422) try: new_name = body.get('name') new_ingredients = body.get('ingredients') new_price = body.get('price') new_category = body.get('category') new_item = MenuItem(name=new_name, category=new_category, ingredients=new_ingredients, price=new_price) new_item.insert() menu_items = MenuItem.query.order_by(MenuItem.id).all() return jsonify({"success": True, "menu_items": [menu_item.format() for menu_item in menu_items] }) except Exception: abort(422)