Esempio n. 1
0
    def test_new_non_published_post_does_not_purge_page_count_cache(self):
        self._create_test_posts()

        Post.get_post_page_count()

        self.assertIsNotNone(memcache.get(Post._page_count_memcached_key))

        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_count_memcached_key))
Esempio n. 2
0
    def _get_pagination_data(self):
        page_number = int(self.request.route_kwargs.get('page_number', 1))
        number_of_pages = Post.get_post_page_count()

        if number_of_pages == 1:
            return {}

        pagination_data = {
            'prev_page_active': (page_number > 1),
            'prev_page':
                get_route('home_by_page', page_number = (page_number - 1))
                    if (page_number > 1) else '#',
            'next_page_active': (page_number < number_of_pages),
            'next_page':
                get_route('home_by_page', page_number = (page_number + 1))
                    if (page_number < number_of_pages) else '#',
            'pages': []
        }

        for i in range(1, number_of_pages + 1):
            pagination_data['pages'].append({
                'active': (i == page_number),
                'number': i,
                'url': get_route('home_by_page', page_number=i)
            })

        return pagination_data
Esempio n. 3
0
    def test_getting_page_count_caches_value_in_memcache(self):
        self._create_test_posts()

        Post.get_post_page_count()

        self.assertIsNotNone(memcache.get(Post._page_count_memcached_key))
Esempio n. 4
0
    def test_page_count_does_not_include_non_published_posts(self):
        self._create_test_posts()
        self._create_test_non_published_posts()

        self.assertEqual(Post.get_post_page_count(), 2)
Esempio n. 5
0
    def test_can_get_post_page_count(self):
        self._create_test_posts()

        self.assertEqual(configuration.POSTS_PER_PAGE, 10)
        self.assertEqual(Post.get_post_page_count(), 2)