def test_delete_shopping_list(self): """ Unittest : Delete shopping list - success :return: """ self.add_shooping_list('test_title', 'test_store') shopping_list = ShoppingList.query.filter_by( title='test_title').first() item = Item.query.filter_by(id=1).first() shopping_service.add_item_to_shopping_list(shopping_list, item, 1) res = shopping_service.delete_shopping_list(1) self.assertTrue(res == 1)
def test_get_shopping_list_by_item_id(self): """ Unittest : Get shopping list by item id - success :return: """ self.add_shooping_list('test_title', 'test_store') shopping_list = ShoppingList.query.filter_by( title='test_title').first() item = Item.query.filter_by(id=1).first() shopping_service.add_item_to_shopping_list(shopping_list, item, 1) res = shopping_service.get_shopping_list_by_item_id(1) self.assertIn('test_title', str(res)) self.assertIn('Water Bottle', str(res))
def test_search_shopping_list_by_title_keyword(self): """ Unittest : Search shopping list by title containing a keyword - success :return: """ self.add_shooping_list('test_title', 'test_store') shopping_list = ShoppingList.query.filter_by( title='test_title').first() item = Item.query.filter_by(id=1).first() shopping_service.add_item_to_shopping_list(shopping_list, item, 1) res = shopping_service.search_shopping_list_by_title_keyword('test') self.assertIn('test_title', str(res)) self.assertIn('Water Bottle', str(res))
def put(self): """ Restful endpoint to add item in the shopping list :return: shopping list contents """ parser = get_shopping_list_item_put_req_parser() args = parser.parse_args() shopping_list_id = args['shopping_list_id'] item_id = args['item_id'] quantity = args['quantity'] item = shopping_service.get_item(item_id) if not item: abort(409, message='Item does not exist') shopping_list = shopping_service.get_shopping_list(shopping_list_id) if not shopping_list: abort(409, message='Shopping List does not exist') data = shopping_service.add_item_to_shopping_list( shopping_list, item, quantity) return data, 201