Unittests v1 - #7
Conversation
| def test_book_list(self): | ||
| url = reverse('books-list') | ||
| response = self.client.get(url) | ||
| self.assertEqual(response.status_code, 200) |
There was a problem hiding this comment.
тут только успешные сценарии - можно проверить что если не залогинен получишь 401 или если книга не твоя при изменении получишь 400
There was a problem hiding this comment.
так тут просто лист книг возвращается, ничего не запрещено
| "genre": "novel", | ||
| "writing_date": "1984-01-01"} | ||
| self.book = Book.objects.create(author_id=self.author.id, | ||
| user_id=self.user.id, **book_data) |
There was a problem hiding this comment.
модели в тестах удобно создавать через factory-boy погугли про такой пакет, так же с помощью него и дикты тоже можно генерировать
| from apps.users.models import User | ||
| from apps.books.models import Author, BookReview, Book | ||
| from apps.users.views import UserView | ||
| class PositiveApiBookTestCase(APITestCase): |
There was a problem hiding this comment.
обычно тесты не делят на позитивные и негативные - просто все подряд
…file and commenting celery-redis-flower images to not slow a system without need
Docker installation v1
…to create unittest models' info
# Conflicts: # backend/apps/books/tests/test_book.py
|
|
||
| from apps.users.models import User | ||
| from apps.users.views import UserView | ||
| class PositiveApiUserTestCase(APITestCase): |
| def setUp(self): | ||
| user_data = {'email': 'test@mail.ru', | ||
| 'password': '123456!'} | ||
| self.user = User.objects.create(**user_data) |
| self.other_user = UserFactory() | ||
| self.other_user_client = UserFactory.get_auth_client(user=self.other_user) | ||
|
|
||
| self.admin = User.objects.create_superuser(email='admin@mail.ru', |
There was a problem hiding this comment.
здест тоже фабрику, если не получается - значит что то неправильно делаешь, должно работать так: UserFactory(is_superadmin=True)
| "genre": "horror", | ||
| "writing_date": "2001-01-01", | ||
| "author": self.author.id, | ||
| "user": self.user.id} |
There was a problem hiding this comment.
дикты тоже можно фабриками генерировать, во всех следующих тестах тоже

Добавил юнит тесты для основных апи методов юзера и книги. Напиши, что нужно поправить/добавить, потом по тому же принципу добавлю для комментариев