Example #1
0
    def test_retrive_ingredients_assigned_to_recipes(self, registred_user,
                                                     logged_client):
        """Test filtering ingredients by those assigned to recipes"""
        ingredient1 = Ingredient.objects.create(user=registred_user,
                                                name='Turkey')
        ingredient2 = Ingredient.objects.create(user=registred_user,
                                                name='Apples')
        recipe = Recipe.objects.create(title='Apple crumble',
                                       time_minutes=5,
                                       price=10,
                                       user=registred_user)
        recipe.ingredients.add(ingredient2)

        response = logged_client.get(INGREDIENTS_URL, {'assigned_only': 1})

        serializer1 = IngredientSerializer(ingredient1)
        serializer2 = IngredientSerializer(ingredient2)

        assert serializer1.data not in response.data
        assert serializer2.data in response.data
Example #2
0
    def test_retrieve_ingredients(self):
        """test retrieving ingredients"""
        Ingredient.objects.create(user=self.user, name='Vegan')
        Ingredient.objects.create(user=self.user, name='Dessert')

        res = self.client.get(INGREDIENTS_URL)

        Ingredients = Ingredient.objects.all().order_by('-name')
        serializer = IngredientSerializer(Ingredients, many=True)
        self.assertEqual(res.status_code, status.HTTP_200_OK)
        self.assertEqual(res.data, serializer.data)
    def test_retrieving_ingredient_list(self):
        """Test retreving a list of ingredients"""
        Ingredient.objects.create(user=self.user, name='Kale')
        Ingredient.objects.create(user=self.user, name='Salt')

        res = self.client.get(INGREDIENT_URL)

        ingredients = Ingredient.objects.all().order_by('-name')
        serializer = IngredientSerializer(ingredients, many=True)
        self.assertEqual(res.status_code, status.HTTP_200_OK)
        self.assertEqual(res.data, serializer.data)
    def test_retrive_ingredients_list(self):
        Ingredient.objects.create(user=self.user, name="Kale")
        Ingredient.objects.create(user=self.user, name="Salt")

        res = self.client.get(INGREDIENT_URL)
        self.assertEqual(res.status_code, status.HTTP_200_OK)

        ingredients = Ingredient.objects.all().order_by("-name")
        serializer = IngredientSerializer(ingredients, many=True)

        self.assertEqual(res.data, serializer.data)
    def test_retrieve_ingredient_list(self):
        Ingredient.objects.create(user=self.user, name="kale")
        Ingredient.objects.create(user=self.user, name='salt')

        res = self.client.get(INGREDIENTS_URL)

        ingredients = Ingredient.objects.all().order_by('-name')
        serializer = IngredientSerializer(ingredients, many=True)

        self.assertEquals(res.status_code, status.HTTP_200_OK)
        self.assertEquals(res.data, serializer.data)
Example #6
0
    def test_if_can_view(self):
        '''Tests if the user can view his ingredients'''
        create_ingredient(self.user, 'cabbage')
        ingredient = Ingredient.objects.filter(name='cabbage', owner=self.user)

        res = self.client.get(INGREDIENT_URL)

        serializer = IngredientSerializer(ingredient, many=True)

        self.assertEqual(res.status_code, status.HTTP_200_OK)
        self.assertEqual(serializer.data, res.data)
    def test_retrieve_ingredients(self):
        Ingredient.objects.create(user=self.user, name='Ing Name 1')
        Ingredient.objects.create(user=self.user, name='Ing Name 2')

        response = self.client.get(INGREDIENTS_URL)

        ingredients = Ingredient.objects.all().order_by('name')
        serializer = IngredientSerializer(ingredients, many=True)

        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(response.data, serializer.data)
    def test_retrieve_tags_assigned_to_recipes(self):
        """Test filtering ingredient by those assigned to recipes"""
        ing1 = Ingredient.objects.create(user=self.user, name='Apples')
        ing2 = Ingredient.objects.create(user=self.user, name='Turkey')

        recipe = Recipe.objects.create(
            title="Apple crumple",
            time_minutes=5,
            price=10.00,
            user=self.user
        )

        recipe.ingredients.add(ing1)
        res = self.client.get(INGREDIENTS_URL, {'assigned_only': 1})

        serializer1 = IngredientSerializer(ing1)
        serializer2 = IngredientSerializer(ing2)

        self.assertIn(serializer1.data, res.data)
        self.assertNotIn(serializer2.data, res.data)
Example #9
0
    def test_retrive_ingredient_list(self, logged_client, registred_user):
        """Test retrieving a list og ingredients"""
        Ingredient.objects.create(user=registred_user, name="Kale")
        Ingredient.objects.create(user=registred_user, name="Salt")

        response = logged_client.get(INGREDIENTS_URL)
        ingredients = Ingredient.objects.all().order_by('-name')
        serializer = IngredientSerializer(ingredients, many=True)

        assert response.status_code == status.HTTP_200_OK
        assert response.data == serializer.data
    def test_retrieve_ingredients_success(self):
        """Test retrieving ingredients"""
        Ingredient.objects.create(name="Salt", user=self.user)
        Ingredient.objects.create(name="Pepper", user=self.user)

        res = self.client.get(INGREDIENT_URL)

        ingredients = Ingredient.objects.all()
        serializer = IngredientSerializer(ingredients, many=True)

        self.assertEqual(res.status_code, status.HTTP_200_OK)
        self.assertEqual(res.data, serializer.data)
Example #11
0
    def test_retrieve_ingredient_list(self):
        """testa se obtemos uma lista de ingredientes"""
        Ingredient.objects.create(user=self.user, name='Batata')
        Ingredient.objects.create(user=self.user, name='Sal')

        res = self.client.get(INGREDIENTS_URL)

        ingredientes = Ingredient.objects.all().order_by('-name')
        serializer = IngredientSerializer(ingredientes, many=True)

        self.assertEqual(res.status_code, status.HTTP_200_OK)
        self.assertEqual(res.data, serializer.data)
    def test_retrieve_ingredients(self):
        """Test retrieving ingredients"""
        Ingredient.objects.create(user=self.user, name="Cucumber")
        Ingredient.objects.create(user=self.user, name="Brinjal")

        res = self.client.get(INGREDIENT_URL)

        ingredient = Ingredient.objects.all().order_by('-name')
        serializer = IngredientSerializer(ingredient, many=True)

        self.assertEqual(res.status_code, status.HTTP_200_OK)
        self.assertEqual(res.data, serializer.data)
    def test_retrieve_ingredients_authorized(self):
        """
        Test that ingredients can be retrieved after authentication
        """
        Ingredient.objects.create(user=self.user, name="Carrot")
        Ingredient.objects.create(user=self.user, name="Salt")
        res = self.client.get(INGREDIENTS_URL)
        ingredients_model = Ingredient.objects.all().order_by("-name")
        serializer = IngredientSerializer(ingredients_model, many=True)

        self.assertEqual(res.status_code, status.HTTP_200_OK)
        self.assertEqual(res.data, serializer.data)
    def test_for_retrieving_ingredient_list(self):
        """retrieves ingredient list"""
        Ingredients.objects.create(user=self.user, name='Cucumber')
        Ingredients.objects.create(user=self.user, name='Potato')

        url = reverse('recipe:ingredients-list')
        res = self.client.get(url)

        ingredients = Ingredients.objects.all().order_by('-name')
        serializer = IngredientSerializer(ingredients, many=True)
        self.assertEqual(res.status_code, status.HTTP_200_OK)
        self.assertEqual(res.data, serializer.data)
    def test_retrieve_ingredient_list(self):
        """Test retrieving a list of ingredients as logged in user"""
        Ingredient.objects.create(user=self.user, name='Rice noodles')
        Ingredient.objects.create(user=self.user, name='Green onions')

        res = self.client.get(INGREDIENTS_URL)

        ingredients = Ingredient.objects.all().order_by('-name')
        serializer = IngredientSerializer(ingredients, many=True)

        self.assertEqual(res.status_code, status.HTTP_200_OK)
        self.assertEqual(res.data, serializer.data)
Example #16
0
    def test_retrieve_ingredients_assigned_to_recipes(self):
        """Test filtering ingredients by those assigned to recipes"""
        ingredient1 = Ingredient.objects.create(
            user=self.user,
            name="Apple",
        )
        ingredient2 = Ingredient.objects.create(user=self.user, name='Fish')
        recipe = Recipe.objects.create(
            title='Apple crumble',
            time_minutes=5,
            price=10,
            user=self.user,
        )
        recipe.ingredients.add(ingredient1)

        res = self.client.get(INGREDIENT_URL, {'assigned_only': 1})

        serializer1 = IngredientSerializer(ingredient1)
        serializer2 = IngredientSerializer(ingredient2)
        self.assertIn(serializer1.data, res.data)
        self.assertNotIn(serializer2.data, res.data)
    def test_retrieve_ingredient_list(self):
        """Test retrieving a list of ingredients"""
        sample_ingredient(user=self.user, name='Sugar')
        sample_ingredient(user=self.user, name='Salt')

        resp = self.client.get(INGREDIENTS_URL)

        ingredients = Ingredient.objects.all()
        serializer = IngredientSerializer(ingredients, many=True)

        self.assertEqual(resp.status_code, status.HTTP_200_OK)
        self.assertEqual(resp.data, serializer.data)
Example #18
0
    def test_retrieve_ingredients(self):
        """Test that user can get list of all ingredients"""
        Ingredient.objects.create(user=self.user, name="Ketchup")
        Ingredient.objects.create(user=self.user, name="Fries")

        res = self.client.get(INGREDIENT_URL)

        ingredients = Ingredient.objects.all().order_by('name')
        serializer = IngredientSerializer(ingredients, many=True)

        self.assertEqual(res.data, serializer.data)
        self.assertEqual(res.status_code, status.HTTP_200_OK)
Example #19
0
    def test_retrieve_ingredients(self):
        """ Test retrieving ingredients """
        Ingredient.objects.create(user=self.user, name="Mustard Powder")
        Ingredient.objects.create(user=self.user, name="Red Chilli")

        response = self.client.get(INGREDIENTS_URL)

        ingredients = Ingredient.objects.all().order_by("-name")
        serializer = IngredientSerializer(ingredients, many=True)

        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(response.data, serializer.data)
    def test_retrieve_ingredients_assign_to_recipe(self):
        """Test retrieving ingredients assigned to a recipe"""
        ingredient1 = Ingredient.objects.create(user=self.user,
                                                name='Ingredient 1')
        ingredient2 = Ingredient.objects.create(user=self.user,
                                                name='Ingredient 2')
        defaults = {
            'title': 'Sample recipe',
            'time_minutes': 10,
            'price': 5.00
        }
        recipe = Recipe.objects.create(user=self.user, **defaults)
        recipe.ingredients.add(ingredient1)

        res = self.client.get(INGREDIENTS_URL, {'assigned_only': 1})

        serializer1 = IngredientSerializer(ingredient1)
        serializer2 = IngredientSerializer(ingredient2)

        self.assertIn(serializer1.data, res.data)
        self.assertNotIn(serializer2.data, res.data)
    def test_retrive_ingredient_list(self):
        """Test retriving the list of ingredient"""
        Ingredient.objects.create(user=self.user, name="Apple")
        Ingredient.objects.create(user=self.user, name="Vinegar")
        res = self.client.get(INGREDIENT_URL)
        ingredient = Ingredient.objects.all().order_by('-name')

        # serializing the queryset into different form
        serializer = IngredientSerializer(ingredient, many=True)

        self.assertEqual(res.status_code, status.HTTP_200_OK)
        self.assertEqual(res.data, serializer.data)
Example #22
0
    def test_retreive_ingredients_assigned_to_recipe(self):
        """test filterinng ingredients by those assinged to recipes"""

        ingredients1 = Ingredients.objects.create(user=self.user, name="Apple")

        ingredients2 = Ingredients.objects.create(user=self.user,
                                                  name="Turkey")

        recipe = Recipe.objects.create(title="Apple Crumble",
                                       time_minutes=40,
                                       price=12.00,
                                       user=self.user)
        recipe.ingredients.add(ingredients1)

        res = self.client.get(INGREDIENTS_URLS, {'assigned_only': 1})

        serializer1 = IngredientSerializer(ingredients1)
        serializer2 = IngredientSerializer(ingredients2)

        self.assertIn(serializer1.data, res.data)
        self.assertNotIn(serializer2.data, res.data)
Example #23
0
    def test_retrieve_ingredient_list(self):
        '''Test retrieving a list of ingredients'''
        Ingredient.objects.create(user=self.user, title='Vegan')
        Ingredient.objects.create(user=self.user, title='Dessert')

        response = self.client.get(INGREDIENTS_URL)

        ingredients = Ingredient.objects.all().order_by('-title')
        serializer = IngredientSerializer(ingredients, many=True)

        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(response.data, serializer.data)
Example #24
0
    def test_retrieve_ingredients_list(self):
        """Test retrieving ingredients for authenticated user"""
        Ingredient.objects.create(user=self.user, name='Mango')
        Ingredient.objects.create(user=self.user, name='Chocolate')

        res = self.client.get(INGREDIENTS_URL)

        ingredients = Ingredient.objects.all().order_by('-name')
        serializer = IngredientSerializer(ingredients, many=True)

        self.assertEqual(res.status_code, status.HTTP_200_OK)
        self.assertEqual(res.data, serializer.data)
Example #25
0
    def test_get_ingredients(self):
        """Test ingredient retrieval for authorized user"""

        Ingredient.objects.create(user=self.user, name='Beef')
        Ingredient.objects.create(user=self.user, name='Pork')

        res = self.client.get(INGREDIENTS_URL)

        ingredients = Ingredient.objects.all().order_by('-name')
        serializer = IngredientSerializer(ingredients, many=True)
        self.assertEqual(res.status_code, status.HTTP_200_OK)
        self.assertEqual(res.data, serializer.data)
Example #26
0
    def test_retrieve_ingredient(self):
        """Test to retrieve an ingredient list"""
        Ingredient.objects.create(user=self.user, name='kale')
        Ingredient.objects.create(user=self.user, name='tomato')

        res = self.client.get(INGREDIENTS_URL)

        ingredient = Ingredient.objects.all().order_by('-name')
        serializer = IngredientSerializer(ingredient, many=True)

        self.assertEqual(res.status_code, status.HTTP_200_OK)
        self.assertEqual(res.data, serializer.data)
    def test_retrieve_ingredient_list(self):
        """Test retrieving list of ingredients"""
        Ingredient.objects.create(name='tomato', user=self.user)
        Ingredient.objects.create(name='lettuce', user=self.user)

        res = self.client.get(INGREDIENTS_URL)

        ingredients = Ingredient.objects.all().order_by('-name')
        serializer = IngredientSerializer(ingredients, many=True)

        self.assertEqual(res.status_code, status.HTTP_200_OK)
        self.assertEqual(res.data, serializer.data)
Example #28
0
    def test_retrieve_ingredient(self):
        """Test the retrievement of user's ingredients"""
        Ingredient.objects.create(user=self.user, name="TestIngredient1")
        Ingredient.objects.create(user=self.user, name="TestIngredient2")

        res = self.client.get(INGREDIENT_URL)

        ingredients = Ingredient.objects.all().order_by('-name')
        serializer = IngredientSerializer(ingredients, many=True)

        self.assertEqual(res.status_code, status.HTTP_200_OK)
        self.assertEqual(res.data, serializer.data)
    def test_retrieve_ingredients(self):
        """Test that ingredients are retrieved"""
        Ingredient.objects.create(name='Grape', user=self.user)
        Ingredient.objects.create(name='Mango', user=self.user)

        res = self.client.get(INGREDIENT_URL)
        ingredients = Ingredient.objects.all().order_by('-name')

        serializer = IngredientSerializer(ingredients, many=True)

        self.assertEqual(res.status_code, status.HTTP_200_OK)
        self.assertEqual(res.data, serializer.data)
    def test_retrieve_ingredients_list(self):
        """Test ingredients can be retrieved by authorized user"""
        Ingredient.objects.create(user=self.user, name="Kale")
        Ingredient.objects.create(user=self.user, name="Salt")

        res = self.client.get(INGREDIENTS_URL)

        ingredients = Ingredient.objects.all().order_by('-name')
        serializer = IngredientSerializer(ingredients, many=True)

        self.assertEqual(res.status_code, status.HTTP_200_OK)
        self.assertEqual(res.data, serializer.data)