Ejemplo n.º 1
0
    def test_get_article_with_report(self):
        rf = RequestFactory()

        expected = JsonResponse({
            "article": {
                "url": "url",
                "name": "article_name",
                "legit_reports": 0,
                "fake_reports": 0
            },
            "website": {
                "name": "website_name"
            },
            "report": {
                "user_id": "uid",
                "article": "url",
                "value": "L"
            }
        })

        website = Website(id=utils.hash_digest("website_name"),
                          name="website_name")
        website.save()
        article = Article(id=utils.hash_digest("url"),
                          url="url",
                          name="article_name",
                          website=website)
        article.save()

        user = User.objects.get(id="uid")
        report = Report(user=user, article=article, value=Report.Values.L.name)
        report.save()
        request = rf.post("get_article",
                          data=json.dumps({
                              "object": {
                                  "url": "url",
                                  "website_name": "website_name"
                              }
                          }),
                          content_type="application/json")
        response = get_article.handler(request)
        self.assertEqual(str(response), str(expected))
        self.assertEquals(article.as_dict(),
                          json.loads(response.content)["article"])
        self.assertEquals(website.as_dict(),
                          json.loads(response.content)["website"])
        self.assertEquals(report.as_dict(),
                          json.loads(response.content)["report"])
Ejemplo n.º 2
0
    def test_get_article_already_present(self):
        rf = RequestFactory()

        expected = JsonResponse({
            "article": {
                "url": "url",
                "name": "article_name",
                "legit_reports": 0,
                "fake_reports": 0
            },
            "website": {
                "name": "website_name"
            }
        })
        website = Website(id=utils.hash_digest("website_name"),
                          name="website_name")
        website.save()
        article = Article(id=utils.hash_digest("url"),
                          url="url",
                          name="article_name",
                          website=website)
        article.save()
        request = rf.post("get_article",
                          data=json.dumps({
                              "object": {
                                  "url": "url",
                                  "website_name": "website_name"
                              }
                          }),
                          content_type="application/json")
        response = get_article.handler(request)
        self.assertEqual(str(response), str(expected))
        self.assertEquals(article.as_dict(),
                          json.loads(response.content)["article"])
        self.assertEquals(website.as_dict(),
                          json.loads(response.content)["website"])