From a08c6ad80033c02356e7d213737552dc8584419d Mon Sep 17 00:00:00 2001 From: muhammadvadud Date: Wed, 26 Nov 2025 14:01:54 +0500 Subject: [PATCH] Fix typo --- core/apps/accounts/models/search_history.py | 6 +- core/apps/api/tests/__init__.py | 1 + core/apps/api/tests/category/test_category.py | 12 ++-- core/apps/api/tests/search/__init__.py | 1 + .../api/tests/search/test_search_history.py | 56 +++++++++++++++++++ 5 files changed, 69 insertions(+), 7 deletions(-) create mode 100644 core/apps/api/tests/search/__init__.py create mode 100644 core/apps/api/tests/search/test_search_history.py diff --git a/core/apps/accounts/models/search_history.py b/core/apps/accounts/models/search_history.py index af218fa..659ec8c 100644 --- a/core/apps/accounts/models/search_history.py +++ b/core/apps/accounts/models/search_history.py @@ -2,12 +2,16 @@ from django.db import models from django_core.models.base import AbstractBaseModel from django.utils.translation import gettext_lazy as _ from django.contrib.auth import get_user_model - +from model_bakery import baker class SearchHistory(AbstractBaseModel): value = models.CharField(verbose_name=_('Search History'), max_length=255) user = models.ForeignKey(get_user_model(), verbose_name=_('User'), on_delete=models.CASCADE) + @classmethod + def _baker(cls): + return baker.make(cls) + def __str__(self): return str(self.pk) diff --git a/core/apps/api/tests/__init__.py b/core/apps/api/tests/__init__.py index 121b071..9f951c8 100644 --- a/core/apps/api/tests/__init__.py +++ b/core/apps/api/tests/__init__.py @@ -1,2 +1,3 @@ from .category import * # noqa from .ad import * # noqa +from .search import * # noqa diff --git a/core/apps/api/tests/category/test_category.py b/core/apps/api/tests/category/test_category.py index be4ad33..e2c6abf 100644 --- a/core/apps/api/tests/category/test_category.py +++ b/core/apps/api/tests/category/test_category.py @@ -25,9 +25,9 @@ def data(api_client): "list": reverse("category-list"), "retrieve": reverse("category-detail", kwargs={"pk": instance.pk}), "retrieve-not-found": reverse("category-detail", kwargs={"pk": 1000}), - "list-home-ad": reverse("category-home-list"), - "retrieve-home-ad": reverse("category-home-detail", kwargs={"pk": instance.pk}), - "retrieve-home-ad-not-found": reverse("category-home-detail", kwargs={"pk": 1000}), + "list-category-home": reverse("category-home-list"), + "retrieve-category-home": reverse("category-home-detail", kwargs={"pk": instance.pk}), + "retrieve-category-home-not-found": reverse("category-home-detail", kwargs={"pk": 1000}), }, client, instance, @@ -64,7 +64,7 @@ def test_retrieve_not_found(data): @pytest.mark.django_db def test_category_home_list(data): urls, client, _ = data - response = client.get(urls["list-home-ad"]) + response = client.get(urls["list-category-home"]) data_resp = response.json() assert response.status_code == 200 assert data_resp["status"] is True @@ -73,7 +73,7 @@ def test_category_home_list(data): @pytest.mark.django_db def test_category_home_retrieve(data): urls, client, _ = data - response = client.get(urls["retrieve-home-ad"]) + response = client.get(urls["retrieve-category-home"]) data_resp = response.json() assert response.status_code == 200 assert data_resp["status"] is True @@ -82,7 +82,7 @@ def test_category_home_retrieve(data): @pytest.mark.django_db def test_category_home_retrieve_not_found(data): urls, client, _ = data - response = client.get(urls["retrieve-home-ad-not-found"]) + response = client.get(urls["retrieve-category-home-not-found"]) data_resp = response.json() assert response.status_code == 404 assert data_resp["status"] is False diff --git a/core/apps/api/tests/search/__init__.py b/core/apps/api/tests/search/__init__.py new file mode 100644 index 0000000..9b1bf91 --- /dev/null +++ b/core/apps/api/tests/search/__init__.py @@ -0,0 +1 @@ +from .test_search_history import * # noqa diff --git a/core/apps/api/tests/search/test_search_history.py b/core/apps/api/tests/search/test_search_history.py new file mode 100644 index 0000000..ad11d85 --- /dev/null +++ b/core/apps/api/tests/search/test_search_history.py @@ -0,0 +1,56 @@ +import pytest +from django.urls import reverse +from rest_framework.test import APIClient + +from core.apps.accounts.models import SearchHistory + + +@pytest.fixture +def instance(db): + return SearchHistory._baker() + + +@pytest.fixture +def api_client(instance): + client = APIClient() + client.force_authenticate(user=instance.user) + return client, instance + + +@pytest.fixture +def data(api_client): + client, instance = api_client + return ( + { + "list": reverse("search-history-list"), + "retrieve": reverse("search-history-detail", kwargs={"pk": instance.pk}), + "retrieve-not-found": reverse("search-history-detail", kwargs={"pk": 1000}), + }, + client, + instance, + ) + + +@pytest.mark.django_db +def test_list(data): + urls, client, _ = data + response = client.get(urls["list"]) + data_resp = response.json() + assert response.status_code == 200 + assert data_resp["status"] is True + + +@pytest.mark.django_db +def test_create(data): + urls, client, _ = data + response = client.post(urls["list"], data={"value": "test-text"}) + data_resp = response.json() + assert response.status_code == 201 + assert data_resp["status"] is True + + +@pytest.mark.django_db +def test_destroy(data): + urls, client, _ = data + response = client.delete(urls["retrieve"]) + assert response.status_code == 204