mirror of
https://github.com/cookiecutter/cookiecutter-django.git
synced 2025-02-16 19:41:03 +03:00
Merge branch 'extended-drf-tests'
This commit is contained in:
commit
3694f3dcaa
|
@ -19,8 +19,8 @@ matrix:
|
|||
script: tox -e black-template
|
||||
- name: Basic Docker
|
||||
script: sh tests/test_docker.sh
|
||||
- name: Docker with Celery
|
||||
script: sh tests/test_docker.sh use_celery=y
|
||||
- name: Extended Docker
|
||||
script: sh tests/test_docker.sh use_celery=y use_drf=y
|
||||
- name: Bare metal
|
||||
script: sh tests/test_bare.sh use_celery=y use_compressor=y
|
||||
services:
|
||||
|
|
|
@ -162,6 +162,7 @@ Listed in alphabetical order.
|
|||
Krzysztof Żuraw `@krzysztofzuraw`_
|
||||
Leo won `@leollon`_
|
||||
Leo Zhou `@glasslion`_
|
||||
Leon Kim `@PilhwanKim`_
|
||||
Leonardo Jimenez `@xpostudio4`_
|
||||
Lin Xianyi `@iynaix`_
|
||||
Luis Nell `@originell`_
|
||||
|
@ -367,6 +368,7 @@ Listed in alphabetical order.
|
|||
.. _@rjsnh1522: https://github.com/rjsnh1522
|
||||
.. _@pchiquet: https://github.com/pchiquet
|
||||
.. _@phiberjenz: https://github.com/phiberjenz
|
||||
.. _@PilhwanKim: https://github.com/PilhwanKim
|
||||
.. _@purplediane: https://github.com/purplediane
|
||||
.. _@raonyguimaraes: https://github.com/raonyguimaraes
|
||||
.. _@reggieriser: https://github.com/reggieriser
|
||||
|
|
|
@ -299,6 +299,16 @@ def remove_aws_dockerfile():
|
|||
def remove_drf_starter_files():
|
||||
os.remove(os.path.join("config", "api_router.py"))
|
||||
shutil.rmtree(os.path.join("{{cookiecutter.project_slug}}", "users", "api"))
|
||||
os.remove(
|
||||
os.path.join(
|
||||
"{{cookiecutter.project_slug}}", "users", "tests", "test_drf_urls.py"
|
||||
)
|
||||
)
|
||||
os.remove(
|
||||
os.path.join(
|
||||
"{{cookiecutter.project_slug}}", "users", "tests", "test_drf_views.py"
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
def remove_storages_module():
|
||||
|
|
|
@ -0,0 +1,24 @@
|
|||
import pytest
|
||||
from django.urls import resolve, reverse
|
||||
|
||||
from {{ cookiecutter.project_slug }}.users.models import User
|
||||
|
||||
pytestmark = pytest.mark.django_db
|
||||
|
||||
|
||||
def test_user_detail(user: User):
|
||||
assert (
|
||||
reverse("api:user-detail", kwargs={"username": user.username})
|
||||
== f"/api/users/{user.username}/"
|
||||
)
|
||||
assert resolve(f"/api/users/{user.username}/").view_name == "api:user-detail"
|
||||
|
||||
|
||||
def test_user_list():
|
||||
assert reverse("api:user-list") == "/api/users/"
|
||||
assert resolve("/api/users/").view_name == "api:user-list"
|
||||
|
||||
|
||||
def test_user_me():
|
||||
assert reverse("api:user-me") == "/api/users/me/"
|
||||
assert resolve("/api/users/me/").view_name == "api:user-me"
|
|
@ -0,0 +1,34 @@
|
|||
import pytest
|
||||
from django.test import RequestFactory
|
||||
|
||||
from {{ cookiecutter.project_slug }}.users.api.views import UserViewSet
|
||||
from {{ cookiecutter.project_slug }}.users.models import User
|
||||
|
||||
pytestmark = pytest.mark.django_db
|
||||
|
||||
|
||||
class TestUserViewSet:
|
||||
def test_get_queryset(self, user: User, rf: RequestFactory):
|
||||
view = UserViewSet()
|
||||
request = rf.get("/fake-url/")
|
||||
request.user = user
|
||||
|
||||
view.request = request
|
||||
|
||||
assert user in view.get_queryset()
|
||||
|
||||
def test_me(self, user: User, rf: RequestFactory):
|
||||
view = UserViewSet()
|
||||
request = rf.get("/fake-url/")
|
||||
request.user = user
|
||||
|
||||
view.request = request
|
||||
|
||||
response = view.me(request)
|
||||
|
||||
assert response.data == {
|
||||
"username": user.username,
|
||||
"email": user.email,
|
||||
"name": user.name,
|
||||
"url": f"http://testserver/api/users/{user.username}/",
|
||||
}
|
Loading…
Reference in New Issue
Block a user