Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # TEST
- def test_article_create(self, client, article):
- self.login(client)
- data = {
- "created_at": article.created_at,
- "title": article.title,
- "slug": article.slug,
- "content": article.content,
- "status": article.status,
- # "user": article.user,
- "category": article.category_id,
- }
- res = client.post(f'/api/news/', data=data)
- # print(res, data)
- assert res.status_code == 201
- client.logout()
- article_dict = res.json()
- assert data.get('title') == article_dict.get("title")
- assert data.get('slug') == article_dict.get('slug')
- assert data.get('content') == article_dict.get('content')
- assert data.get('category') == article_dict.get('category')
- assert data.get('created_at') == article_dict.get('created_at')
- # assert data.get('user') == article_dict.get('user')
- assert data.get('status') == article_dict.get('status')
- # MODEL
- class Article(SoftDeleteMixin, UserCreatedMixin):
- uuid = models.UUIDField(default=uuid.uuid4, editable=False)
- category = models.ForeignKey(Category, on_delete=models.CASCADE, related_name='articles')
- title = models.CharField(max_length=100, unique=True)
- slug = models.SlugField(max_length=255)
- image = models.ImageField(null=True, upload_to=image_path)
- content = models.TextField()
- tags = models.ManyToManyField('Tag', blank=True, related_name='articles')
- status = models.CharField(max_length=20, choices=ARTICLE_STATUSES,
- default=ArticleStatuses.ARTICLE_STATUS_DRAFT.value)
- views = models.PositiveIntegerField(default=0)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement