コード例 #1
0
ファイル: test_enums.py プロジェクト: philip-cn/AndelaEatsApi
    def test_meal_types_enums(self):
        values = ['main', 'side', 'protein']

        for value in values:
            result = MealTypes.has_value(value)

            self.assertTrue(result)
コード例 #2
0
    def update_meal(self, meal_id):
        name, image_url, meal_type = self.request_params(
            'mealName', 'image', 'mealType')

        meal = self.meal_repo.get(meal_id)
        if meal:
            if meal.is_deleted:
                return self.handle_response(
                    'Bad Request. This meal item is deleted', status_code=400)

            updates = {}
            if name:
                if self.meal_repo.get_unpaginated(name=name):
                    return self.handle_response(
                        'Meal item with this name already exists',
                        status_code=400)
                updates['name'] = name
            if image_url:
                updates['image'] = image_url
            if meal_type and MealTypes.has_value(meal_type):
                updates['meal_type'] = meal_type

            self.meal_repo.update(meal, **updates)
            return self.handle_response('OK',
                                        payload={'mealItem': meal.serialize()})

        return self.handle_response('Invalid or incorrect meal_id provided',
                                    status_code=400)
コード例 #3
0
    def create_meal(self):
        """
        Creates a new meal item
        """
        location_id = Auth.get_location()
        name, image_url, meal_type = self.request_params('mealName', 'image', 'mealType')
        if self.meal_repo.get_unpaginated(name=name, location_id=location_id):
            return self.handle_response('Meal item with this name already exists', status_code=400)
        if MealTypes.has_value(meal_type):
            new_meal_item = self.meal_repo.new_meal_item(name, image_url, meal_type, location_id).serialize()

            return self.handle_response('OK', payload={'mealItem': new_meal_item}, status_code=201)
        return self.handle_response('Invalid meal type. Must be main, protein or side', status_code=400)