Advertisement
anastasia_koroto

Untitled

Sep 17th, 2019
462
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.72 KB | None | 0 0
  1. # TEST
  2.     def test_article_create(self, client, article):
  3.         self.login(client)
  4.         data = {
  5.             "created_at": article.created_at,
  6.             "title": article.title,
  7.             "slug": article.slug,
  8.             "content": article.content,
  9.             "status": article.status,
  10.             # "user": article.user,
  11.             "category": article.category_id,
  12.         }
  13.         res = client.post(f'/api/news/', data=data)
  14.         # print(res, data)
  15.         assert res.status_code == 201
  16.         client.logout()
  17.         article_dict = res.json()
  18.         assert data.get('title') == article_dict.get("title")
  19.         assert data.get('slug') == article_dict.get('slug')
  20.         assert data.get('content') == article_dict.get('content')
  21.         assert data.get('category') == article_dict.get('category')
  22.         assert data.get('created_at') == article_dict.get('created_at')
  23.         # assert data.get('user') == article_dict.get('user')
  24.         assert data.get('status') == article_dict.get('status')
  25.  
  26.  
  27. # MODEL
  28. class Article(SoftDeleteMixin, UserCreatedMixin):
  29.     uuid = models.UUIDField(default=uuid.uuid4, editable=False)
  30.     category = models.ForeignKey(Category, on_delete=models.CASCADE, related_name='articles')
  31.  
  32.     title = models.CharField(max_length=100, unique=True)
  33.     slug = models.SlugField(max_length=255)
  34.     image = models.ImageField(null=True, upload_to=image_path)
  35.     content = models.TextField()
  36.     tags = models.ManyToManyField('Tag', blank=True, related_name='articles')
  37.  
  38.     status = models.CharField(max_length=20, choices=ARTICLE_STATUSES,
  39.                               default=ArticleStatuses.ARTICLE_STATUS_DRAFT.value)
  40.  
  41.     views = models.PositiveIntegerField(default=0)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement