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)
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)
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())
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)
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)
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)
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
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"])