def test_new_non_published_post_does_not_purge_cached_pages(self): self._create_test_posts() Post.get_posts_by_page(2) self.assertIsNotNone(memcache.get(Post._page_memcached_key_prefix % (date.today(), 2))) Post( subject="another test post", mark_down="test mark down", html="test html", is_published=False, author=self.test_author, ).put() self.assertIsNotNone(memcache.get(Post._page_memcached_key_prefix % (date.today(), 2)))
def _get_data_for_list(self): page_number = int(self.request.route_kwargs.get('page_number', 1)) try: posts = Post.get_posts_by_page(page_number) except InvalidPageSelectedException: self.abort(404) return posts
def test_getting_posts_by_page_does_not_include_future_posts(self): self._create_test_posts() # Create a post for the future. Post( subject="this post shouldn't show up.", mark_down="test mark down", html="test html", is_published=True, author=self.test_author, post_date=datetime.today() + timedelta(days=1), ).put() posts = Post.get_posts_by_page(1) self.assertFalse(posts[0].subject == "this post shouldn't show up.")
def test_exception_if_invalid_page_number_is_requested(self): self._create_test_posts() with self.assertRaises(InvalidPageSelectedException): Post.get_posts_by_page(10)
def test_getting_posts_by_page_caches_in_memcached(self): self._create_test_posts() Post.get_posts_by_page(2) self.assertIsNotNone(memcache.get(Post._page_memcached_key_prefix % (date.today(), 2)))
def test_getting_posts_by_page_does_not_include_non_published_posts(self): self._create_test_posts() self._create_test_non_published_posts() self.assertEqual(len(Post.get_posts_by_page(2)), 4)
def test_can_get_posts_by_page(self): self._create_test_posts() self.assertEqual(len(Post.get_posts_by_page(2)), 4)