django-cqrs-demo
40 строк · 1.1 Кб
1from http import HTTPStatus
2
3from django.test import Client
4
5from apps.blogs.models import Post
6from apps.users.models import User
7from tests.test_blogs.factories.post import PostFactory
8
9
10def test_success(client: Client, user: User):
11"""Test success update ."""
12post = PostFactory.create(author=user)
13
14client.force_login(user)
15response = client.post("/posts/{0}/delete/".format(post.id))
16
17assert response.status_code == HTTPStatus.FOUND
18assert response.url == "/posts/my/"
19assert not Post.objects.filter(id=post.id).exists()
20
21
22def test_not_auth(client: Client, user: User):
23"""Test not auth user."""
24post = PostFactory.create(author=user)
25
26response = client.post("/posts/{0}/delete/".format(post.id))
27
28assert response.status_code == HTTPStatus.FOUND
29assert response.url == "/login/"
30
31
32def test_not_owner(client: Client, user: User, another_user: User):
33"""Test not owner."""
34post = PostFactory.create(author=another_user)
35
36client.force_login(user)
37response = client.post("/posts/{0}/delete/".format(post.id))
38
39assert response.status_code == HTTPStatus.FOUND
40assert response.url == "/login/"
41