Beispiel #1
0
    def test_get_a_post(self):
        category_key = self.categories.add("category")
        test_tags = ["a new tag", "a new new tag"]
        new_tag_keys = self.tags.add(test_tags)
        post_key = self.posts.add("a title", "body text", category_key,
                                  new_tag_keys)

        #test with no memcache
        post = BlogPost.get(post_key.id())
        self.assertEqual(post.key, post_key)

        #test memcached
        post = BlogPost.get(post_key.id())
        self.assertEqual(post.key, post_key)
Beispiel #2
0
    def test_stripped_answers(self):
        test_tags = ["a new tag", "a new new tag"]
        tag_keys = self.tags.add(test_tags)

        ans1 = Answer(p_answer="ans1", is_correct=True)

        ans2 = Answer(p_answer="ans2", is_correct=False)

        category_key = self.categories.add("category")
        summary = "a summmary"
        title = "a title"
        body = "here is a body"

        post_key = BlogPost(title=title,
                            body=body,
                            category=category_key,
                            tags=tag_keys,
                            summary=summary,
                            answers=[ans1, ans2]).put()

        post = post_key.get()
        jsoned_answers = [{
            "p_answer": "ans1",
            "is_correct": False
        }, {
            "p_answer": "ans2",
            "is_correct": False
        }]

        self.assertItemsEqual(post.strip_answers_jsoned(), jsoned_answers)
Beispiel #3
0
    def test_get_category(self):
        category_key = self.categories.add("category")
        test_tags = ["a new tag", "a new new tag"]
        new_tag_keys = self.tags.add(test_tags)
        post_key = self.posts.add("a title", "body text", category_key,
                                  new_tag_keys)

        post = BlogPost.get(post_key.id())

        self.assertEqual("category", post.get_category())
Beispiel #4
0
    def test_get_tagnames(self):
        category_key = self.categories.add("category")
        test_tags = ["a new tag", "a new new tag"]
        new_tag_keys = self.tags.add(test_tags)
        post_key = self.posts.add("a title", "body text", category_key,
                                  new_tag_keys)

        post = BlogPost.get(post_key.id())

        tag_names = post.get_tag_names()

        self.assertItemsEqual(test_tags, tag_names)
Beispiel #5
0
    def test_retrieve_from_memcache(self):
        category_key = self.categories.add("category")

        test_tags = ["a new tag", "a new new tag"]
        new_tag_keys = self.tags.add(test_tags)

        post_key = self.posts.add("a title", "body text", category_key,
                                  new_tag_keys)

        id = post_key.id()

        memcached_post = BlogPost.get(id)  # requested a post added to MEMCACHE

        self.assertEqual(memcached_post.key, post_key)
Beispiel #6
0
    def test_get_related_posts(self):
        category_key = self.categories.add("category")
        test_tags = ["a new tag", "a new new tag"]
        new_tag_keys = self.tags.add(test_tags)
        current_post = self.posts.add("a title", "body text", category_key,
                                      new_tag_keys)

        rel_test_tags = ["a new tag", "a different tag"]
        rel_tag_keys = self.tags.add(rel_test_tags)
        rel_post_key = self.posts.add("a different title", "body sec2 text",
                                      category_key, rel_tag_keys)
        rel_post = BlogPost.get(rel_post_key.id())

        related_posts = self.posts.get_related_posts(current_post.id())

        self.assertListEqual([rel_post], related_posts)
Beispiel #7
0
    def create_post(self, category="a category"):
        category_key = self.categories.add(category)

        test_tags = ["a new tag", "a new new tag"]
        tag_keys = self.tags.add(test_tags)

        summary = "a summmary"
        title = "a title"
        body = "here is a body"

        post_key = BlogPost(title=title,
                            body=body,
                            category=category_key,
                            tags=tag_keys,
                            summary=summary,
                            answers=()).put()

        return post_key.get(), category_key, tag_keys
Beispiel #8
0
    def test_update_tags(self):
        """
        replacing a new tag with a new different tag
        :return:
        """
        test_tags = ["a new tag", "a new new tag"]
        tag_keys = self.tags.add(test_tags)

        category_key = self.categories.add("category")
        post_key = self.posts.add("a title", "body text", category_key,
                                  tag_keys)

        test_new_tags = ["a new different tag", "a new new tag"]
        self.tags.update(test_new_tags, BlogPost.get(post_key.id()))
        tag_names = self.tags.get_names()

        self.assertListEqual(tag_names,
                             [u"a new new tag", u"a new different tag"])