コード例 #1
0
    def test_add_tags(self):
        question = Question(author=self.user, title="A", description="B")

        with self.assertRaises(ValueError):
            question.add_tags(["tag1", "tag2"])

        question.save()
        tags = ["tag1", "tag2", "tag3"]
        question.add_tags(tags)

        self.assertEqual(set(tags),
                         set(question.tags.values_list("name", flat=True)))
コード例 #2
0
    def test_add_tags(self):
        question = Question(author=self.user, title="A", content="B")

        # Question has not been saved to DB yet
        with self.assertRaises(ValueError):
            question.add_tags(["tag1", "tag2"], self.user)

        question.save()
        raw_tags = ["tag1", "tag2", "tag3"]
        question.add_tags(raw_tags, self.user)

        self.assertEqual(set(raw_tags),
                         set(question.tags.values_list("name", flat=True)))
コード例 #3
0
ファイル: test_view.py プロジェクト: mezlered/django-hasker
    def test_query_with_tag(self):
        unique_title = md5(urandom(10)).hexdigest()
        unique_content = md5(urandom(10)).hexdigest()
        tag = "tag"

        question = Question(
            title=unique_title, description=unique_content, author=self.user
        )
        question.save()
        question.add_tags([tag])

        client = Client()
        url = reverse("question:search")

        response = client.get(url, data={"search_": f"tag:{tag}"})
        self.assertEqual(response.status_code, 302)
        self.assertIn(reverse("question:tag", args=(tag,)), response.url)

        response = client.get(
            url, data={"search_": f"tag:{tag}"}, follow=True
        )
        self.assertEqual(response.status_code, 200)
コード例 #4
0
    def test_query_with_tag(self):
        unique_title = md5(urandom(10)).hexdigest()
        unique_content = md5(urandom(10)).hexdigest()
        unique_tag = md5(urandom(10)).hexdigest()

        question = Question(title=unique_title,
                            content=unique_content,
                            author=self.user)
        question.save()
        question.add_tags([unique_tag], self.user)

        client = Client()
        url = reverse("search")

        response = client.get(url, data={"q": f"tag:{unique_tag}"})
        self.assertEqual(response.status_code, 302)
        self.assertIn(reverse("tag", args=(unique_tag, )), response.url)

        response = client.get(url,
                              data={"q": f"tag:{unique_tag}"},
                              follow=True)
        self.assertEqual(response.status_code, 200)
        self.assertInHTML(f'<p class="wrapword">{unique_content}</p>',
                          str(response.content))