From 40bbaff60bad4a53d38bd498c57c4e7ade6db74a Mon Sep 17 00:00:00 2001 From: devfzn Date: Tue, 10 Oct 2023 00:08:52 -0300 Subject: [PATCH] =?UTF-8?q?creaci=C3=B3n=20TAG=20API?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit test, model, list, serializers, views & urls --- README.md | 2 +- README3.md | 208 ++++++++++++++++++++ app/core/admin.py | 1 + app/core/migrations/0003_tag_recipe_tags.py | 28 +++ app/core/models.py | 13 ++ app/core/tests/test_models.py | 26 ++- app/recipe/serializers.py | 14 +- app/recipe/tests/test_tags_api.py | 68 +++++++ app/recipe/urls.py | 6 +- app/recipe/views.py | 22 ++- imgs_readme/api_swagger_01.png | Bin 39075 -> 37868 bytes 11 files changed, 373 insertions(+), 15 deletions(-) create mode 100644 app/core/migrations/0003_tag_recipe_tags.py create mode 100644 app/recipe/tests/test_tags_api.py diff --git a/README.md b/README.md index 44e2636..43b2537 100644 --- a/README.md +++ b/README.md @@ -1854,4 +1854,4 @@ Ruta `localhost:8000/api/docs` ---- - Segunda parte -> [Recetas](./README2.md) -- Tercar parte -> [Tags](./README3.md) +- Tercera parte -> [Tags](./README3.md) diff --git a/README3.md b/README3.md index e69de29..c64082a 100644 --- a/README3.md +++ b/README3.md @@ -0,0 +1,208 @@ +# Tags API + +- Añadir capadidad de agregar **tags** a las recetas +- Creación del modelo para los **tags** +- Añadir *endpoints* para la API **tag** +- Actualizar el *endpoint* **recipe**, para agregar y listar tags + +## Tag endpoint + +- `/api/recipe/tags` + + | Método HTTP | Función | + | - | - | + | `POST`| Crear tag | + | `PUT/PATCH` | Actualizar tag | + | `DELETE` | Borrar tag | + | `GET` | Listar tags disponibles | + + +## Test Tag Model + +[`core/tests/test_models.py`](./app/core/tests/test_models.py) + +```py +... + +def create_user(email='user@example.com', password='testpass123'): + """Create and return a new user.""" + return get_user_model().objects.create_user(email, password) + ... + + def test_create_tag(self): + """Test creating a tag is sucessfull.""" + user = create_user() + tag = models.Tag.objects.create(user=user, name='Tag1') + + self.assertEqual(str(tag), tag.name) +``` + +## Tag Model + +- `name` Nombre del tag a crear +- `user` Usuario creador/dueño del tag + +[`core/models.py`](./app/core/models.py) + +```py +... + +class Recipe(models.Model): + """Recipe object.""" + user = models.ForeignKey( + settings.AUTH_USER_MODEL, + on_delete=models.CASCADE, + ) + title = models.CharField(max_length=255) + description = models.TextField(blank=True) + time_minutes = models.IntegerField() + price = models.DecimalField(max_digits=5, decimal_places=2, blank=True) + link = models.CharField(max_length=255, blank=True) + tags = models.ManyToManyField('Tag') # <--- Nueva linea + + def __str__(self): + return self.title + + +class Tag(models.Model): + """Tag for filtering recipes.""" + name = models.CharField(max_length=255) + user = models.ForeignKey( + settings.AUTH_USER_MODEL, + on_delete=models.CASCADE, + ) + + def __str__(self): + return self.name +``` + +### Crear migraciones + +`docker compose run --rm app sh -c python manage.py makemigrations` + +```py +[+] Creating 1/0 + ✔ Container recipes_api_django-db-1 Running 0.0s +Migrations for 'core': + core/migrations/0003_tag_recipe_tags.py + - Create model Tag + - Add field tags to recipe +``` + +### Registrar aplicación tag en el administador + +`app/core/admin.py` + +```py +admin.site.register(models.Tag) +``` + +## Test tags API + +[`recipe/tests/test_tags_api.py`](./app/recipe/tests/test_tags_api.py) + +```py +... + +TAGS_URL = reverse('recipe:tag-list') + +def create_user(email='user@example.com', password='testpass123'): + """Create and return a user.""" + return get_user_model().objects.create_user(email=email, password=password) + +class PublicTagsApiTests(TestCase): + """Test unauthenticated API requests.""" + + def setUp(self): + self.client = APIClient() + + def test_auth_required(self): + """Test auth is required for retriveing tags.""" + res = self.client.get(TAGS_URL) + + self.assertEqual(res.status_code, status.HTTP_401_UNAUTHORIZED) + + +class PrivateTagsApiTests(TestCase): + """Test authenticated API requests.""" + + def setUp(self): + self.user = create_user() + self.client = APIClient() + self.client.force_authenticate(self.user) + + def test_retrieve_tags(self): + """Test retrieving a list of tags.""" + Tag.objects.create(user=self.user, name='Vegan') + Tag.objects.create(user=self.user, name='Omnivore') + + res = self.client.get(TAGS_URL) + + tags = Tag.objects.all().order_by('-name') + serializer = TagSerializer(tags, many=True) + self.assertEqual(res.status_code, status.HTTP_200_OK) + self.assertEqual(res.data, serializer.data) + + def test_tags_limited_to_user(self): + """Test list of tags is limited to authenticated user.""" + user2 = create_user(email='user2@example.com') + Tag.objects.create(user=user2, name='Fruity') + tag = Tag.objects.create(user=self.user, name='Carnivore') + + res = self.client.get(TAGS_URL) + + self.assertEqual(res.status_code, status.HTTP_200_OK) + self.assertEqual(len(res.data), 1) + self.assertEqual(res.data[0]['name'], tag.name) + self.assertEqual(res.data[0]['id'], tag.id) +``` + +### Serializador Tag API + +[`recipe/serializers.py`](./app/recipe/serializers.py) + +```py +... + +class TagSerializer(serializers.ModelSerializer): + """Serializer for tags.""" + + class Meta: + model = Tag + fields = ['id', 'name'] + read_only_fields = ['id'] +``` + +### Views tags APIs + +[`recipe/views.py`](./app/recipe/views.py) + +```py +... + +class TagViewSet(mixins.ListModelMixin, viewsets.GenericViewSet): + """Manage tags in the database.""" + serializer_class = serializers.TagSerializer + queryset = Tag.objects.all() + authentication_classes = [TokenAuthentication] + permission_classes = [IsAuthenticated] + + def get_queryset(self): + """Filter queryset to authenticated user.""" + return self.queryset.filter(user=self.request.user).order_by('-id') +``` + +### URLS tags APIs + +[`recipe/urls.py`](./app/recipe/urls.py) + +```py +... +router.register('recipes', views.RecipeViewSet) +router.register('tags', views.TagViewSet) +... +``` + +## Test Update Tags + + diff --git a/app/core/admin.py b/app/core/admin.py index e5b9bfc..d04dc7e 100644 --- a/app/core/admin.py +++ b/app/core/admin.py @@ -45,3 +45,4 @@ class UserAdmin(BaseUserAdmin): admin.site.register(models.User, UserAdmin) admin.site.register(models.Recipe) +admin.site.register(models.Tag) diff --git a/app/core/migrations/0003_tag_recipe_tags.py b/app/core/migrations/0003_tag_recipe_tags.py new file mode 100644 index 0000000..cbd08c4 --- /dev/null +++ b/app/core/migrations/0003_tag_recipe_tags.py @@ -0,0 +1,28 @@ +# Generated by Django 4.2.5 on 2023-10-10 02:08 + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('core', '0002_recipe'), + ] + + operations = [ + migrations.CreateModel( + name='Tag', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=255)), + ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + migrations.AddField( + model_name='recipe', + name='tags', + field=models.ManyToManyField(to='core.tag'), + ), + ] diff --git a/app/core/models.py b/app/core/models.py index 046c020..7d0f606 100644 --- a/app/core/models.py +++ b/app/core/models.py @@ -56,6 +56,19 @@ class Recipe(models.Model): time_minutes = models.IntegerField() price = models.DecimalField(max_digits=5, decimal_places=2, blank=True) link = models.CharField(max_length=255, blank=True) + tags = models.ManyToManyField('Tag') def __str__(self): return self.title + + +class Tag(models.Model): + """Tag for filtering recipes.""" + name = models.CharField(max_length=255) + user = models.ForeignKey( + settings.AUTH_USER_MODEL, + on_delete=models.CASCADE, + ) + + def __str__(self): + return self.name diff --git a/app/core/tests/test_models.py b/app/core/tests/test_models.py index 0ac5a3b..6c26002 100644 --- a/app/core/tests/test_models.py +++ b/app/core/tests/test_models.py @@ -9,6 +9,11 @@ from django.contrib.auth import get_user_model from core import models +def create_user(email='user@example.com', password='testpass123'): + """Create and return a new user.""" + return get_user_model().objects.create_user(email, password) + + class ModelTests(TestCase): """Test models.""" @@ -16,10 +21,7 @@ class ModelTests(TestCase): """Test creating a user with an email is sucessfull.""" email = 'test@example.com' password = 'testpass123' - user = get_user_model().objects.create_user( - email=email, - password=password, - ) + user = create_user(email, password) self.assertEqual(user.email, email) self.assertTrue(user.check_password(password)) @@ -32,13 +34,13 @@ class ModelTests(TestCase): ['test4@example.COM', 'test4@example.com'], ] for email, expected in sample_emails: - user = get_user_model().objects.create_user(email, 'sample123') + user = create_user(email=email) self.assertEqual(user.email, expected) def test_new_user_withouth_email_raises_error(self): """Test that creating a user withouth an email raises a ValueError.""" with self.assertRaises(ValueError): - get_user_model().objects.create_user('', 'test123') + create_user('', 'test123') def test_create_superuser(self): """Test creating a superuser.""" @@ -51,10 +53,7 @@ class ModelTests(TestCase): def test_create_recipe(self): """Test creating a recipe is successful.""" - user = get_user_model().objects.create_user( - 'test@example.com', - 'test123', - ) + user = create_user() recipe = models.Recipe.objects.create( user=user, title='Nombre receta ejemplo', @@ -64,3 +63,10 @@ class ModelTests(TestCase): ) self.assertEqual(str(recipe), recipe.title) + + def test_create_tag(self): + """Test creating a tag is sucessfull.""" + user = create_user() + tag = models.Tag.objects.create(user=user, name='Tag1') + + self.assertEqual(str(tag), tag.name) diff --git a/app/recipe/serializers.py b/app/recipe/serializers.py index 7ce5914..d8d9dcc 100644 --- a/app/recipe/serializers.py +++ b/app/recipe/serializers.py @@ -3,7 +3,10 @@ Serializers for recipe APIs """ from rest_framework import serializers -from core.models import Recipe +from core.models import ( + Recipe, + Tag, +) class RecipeSerializer(serializers.ModelSerializer): @@ -20,3 +23,12 @@ class RecipeDetailSerializer(RecipeSerializer): class Meta(RecipeSerializer.Meta): fields = RecipeSerializer.Meta.fields + ['description'] + + +class TagSerializer(serializers.ModelSerializer): + """Serializer for tags.""" + + class Meta: + model = Tag + fields = ['id', 'name'] + read_only_fields = ['id'] diff --git a/app/recipe/tests/test_tags_api.py b/app/recipe/tests/test_tags_api.py new file mode 100644 index 0000000..e895e8c --- /dev/null +++ b/app/recipe/tests/test_tags_api.py @@ -0,0 +1,68 @@ +""" +Tests for tags API +""" +from django.contrib.auth import get_user_model +from django.urls import reverse +from django.test import TestCase + +from rest_framework import status +from rest_framework.test import APIClient + +from core.models import Tag + +from recipe.serializers import TagSerializer + + +TAGS_URL = reverse('recipe:tag-list') + + +def create_user(email='user@example.com', password='testpass123'): + """Create and return a user.""" + return get_user_model().objects.create_user(email=email, password=password) + + +class PublicTagsApiTests(TestCase): + """Test unauthenticated API requests.""" + + def setUp(self): + self.client = APIClient() + + def test_auth_required(self): + """Test auth is required for retriveing tags.""" + res = self.client.get(TAGS_URL) + + self.assertEqual(res.status_code, status.HTTP_401_UNAUTHORIZED) + + +class PrivateTagsApiTests(TestCase): + """Test authenticated API requests.""" + + def setUp(self): + self.user = create_user() + self.client = APIClient() + self.client.force_authenticate(self.user) + + def test_retrieve_tags(self): + """Test retrieving a list of tags.""" + Tag.objects.create(user=self.user, name='Vegan') + Tag.objects.create(user=self.user, name='Omnivore') + + res = self.client.get(TAGS_URL) + + tags = Tag.objects.all().order_by('-name') + serializer = TagSerializer(tags, many=True) + self.assertEqual(res.status_code, status.HTTP_200_OK) + self.assertEqual(res.data, serializer.data) + + def test_tags_limited_to_user(self): + """Test list of tags is limited to authenticated user.""" + user2 = create_user(email='user2@example.com') + Tag.objects.create(user=user2, name='Fruity') + tag = Tag.objects.create(user=self.user, name='Carnivore') + + res = self.client.get(TAGS_URL) + + self.assertEqual(res.status_code, status.HTTP_200_OK) + self.assertEqual(len(res.data), 1) + self.assertEqual(res.data[0]['name'], tag.name) + self.assertEqual(res.data[0]['id'], tag.id) diff --git a/app/recipe/urls.py b/app/recipe/urls.py index b254fa3..138b73c 100644 --- a/app/recipe/urls.py +++ b/app/recipe/urls.py @@ -1,7 +1,10 @@ """ URL mappings for the recipe app. """ -from django.urls import path, include +from django.urls import ( + path, + include, +) from rest_framework.routers import DefaultRouter @@ -10,6 +13,7 @@ from recipe import views router = DefaultRouter() router.register('recipes', views.RecipeViewSet) +router.register('tags', views.TagViewSet) app_name = 'recipe' diff --git a/app/recipe/views.py b/app/recipe/views.py index 0f7050a..c7739d5 100644 --- a/app/recipe/views.py +++ b/app/recipe/views.py @@ -1,11 +1,17 @@ """ Views for the recipe APIs. """ -from rest_framework import viewsets +from rest_framework import ( + viewsets, + mixins, +) from rest_framework.authentication import TokenAuthentication from rest_framework.permissions import IsAuthenticated -from core.models import Recipe +from core.models import ( + Recipe, + Tag, +) from recipe import serializers @@ -29,3 +35,15 @@ class RecipeViewSet(viewsets.ModelViewSet): def perform_create(self, serializer): """Create a new recipe.""" serializer.save(user=self.request.user) + + +class TagViewSet(mixins.ListModelMixin, viewsets.GenericViewSet): + """Manage tags in the database.""" + serializer_class = serializers.TagSerializer + queryset = Tag.objects.all() + authentication_classes = [TokenAuthentication] + permission_classes = [IsAuthenticated] + + def get_queryset(self): + """Filter queryset to authenticated user.""" + return self.queryset.filter(user=self.request.user).order_by('-name') diff --git a/imgs_readme/api_swagger_01.png b/imgs_readme/api_swagger_01.png index c9c366614e3ddb1d761db64e101f44cba74ec283..7a13e559233b8bee2b71a09ea358ae6318dc725c 100644 GIT binary patch literal 37868 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

E2LKom{g~qS|;LA>fk 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 EFYC`2{r~^~ literal 39075 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