Testlar qo'shildi

This commit is contained in:
2025-11-26 12:35:22 +05:00
parent bdc2fbe79b
commit f04130d769
8 changed files with 162 additions and 2 deletions

View File

@@ -0,0 +1,2 @@
from .category import * # noqa
from .ad import * # noqa

View File

@@ -0,0 +1 @@
from .test_home_api import * # noqa

View File

@@ -0,0 +1,58 @@
import pytest
from django.urls import reverse
from rest_framework.test import APIClient
from core.apps.api.models import AdModel
@pytest.fixture
def instance(db):
return AdModel._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("home-ad-list"),
"retrieve": reverse("home-ad-detail", kwargs={"pk": instance.pk}),
"retrieve-not-found": reverse("home-ad-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_retrieve(data):
urls, client, _ = data
response = client.get(urls["retrieve"])
data_resp = response.json()
assert response.status_code == 200
assert data_resp["status"] is True
@pytest.mark.django_db
def test_retrieve_not_found(data):
urls, client, _ = data
response = client.get(urls["retrieve-not-found"])
data_resp = response.json()
assert response.status_code == 404
assert data_resp["status"] is False

View File

@@ -0,0 +1 @@
from .test_category import * # noqa

View File

@@ -0,0 +1,88 @@
import pytest
from django.urls import reverse
from rest_framework.test import APIClient
from core.apps.api.models import Category
@pytest.fixture
def instance(db):
return Category._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("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}),
},
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_retrieve(data):
urls, client, _ = data
response = client.get(urls["retrieve"])
data_resp = response.json()
assert response.status_code == 200
assert data_resp["status"] is True
@pytest.mark.django_db
def test_retrieve_not_found(data):
urls, client, _ = data
response = client.get(urls["retrieve-not-found"])
data_resp = response.json()
assert response.status_code == 404
assert data_resp["status"] is False
@pytest.mark.django_db
def test_category_home_list(data):
urls, client, _ = data
response = client.get(urls["list-home-ad"])
data_resp = response.json()
assert response.status_code == 200
assert data_resp["status"] is True
@pytest.mark.django_db
def test_category_home_retrieve(data):
urls, client, _ = data
response = client.get(urls["retrieve-home-ad"])
data_resp = response.json()
assert response.status_code == 200
assert data_resp["status"] is True
@pytest.mark.django_db
def test_category_home_retrieve_not_found(data):
urls, client, _ = data
response = client.get(urls["retrieve-home-ad-not-found"])
data_resp = response.json()
assert response.status_code == 404
assert data_resp["status"] is False