40 lines
1.7 KiB
Python
40 lines
1.7 KiB
Python
|
# -*- coding: utf-8 -*-
|
||
|
from __future__ import absolute_import, print_function, unicode_literals
|
||
|
|
||
|
from djangocms_blog.search_indexes import PostIndex
|
||
|
from . import BaseTest
|
||
|
|
||
|
from haystack.constants import DEFAULT_ALIAS
|
||
|
|
||
|
|
||
|
class PluginIndexingTests(BaseTest):
|
||
|
|
||
|
def setUp(self):
|
||
|
self.index = PostIndex()
|
||
|
|
||
|
def test_blog_post_is_indexed_using_prepare(self):
|
||
|
"""This tests the indexing path way used by update_index mgmt command"""
|
||
|
post = self._get_post(self._post_data[0]['en'])
|
||
|
post = self._get_post(self._post_data[0]['it'], post, 'it')
|
||
|
index = self.get_post_index()
|
||
|
index.index_queryset(DEFAULT_ALIAS) # initialises index._backend_alias
|
||
|
indexed = index.prepare(post)
|
||
|
print(indexed)
|
||
|
self.assertEqual('First post', indexed['title'])
|
||
|
self.assertEqual('This is the description', indexed['description'])
|
||
|
self.assertEqual('First post first line This is the description category 1', indexed['text'])
|
||
|
self.assertEqual('/en/page-two/2015/10/15/first-post/', indexed['url'])
|
||
|
|
||
|
def test_blog_post_is_indexed_using_update_object(self):
|
||
|
"""This tests the indexing path way used by the RealTimeSignalProcessor"""
|
||
|
post = self._get_post(self._post_data[0]['en'])
|
||
|
post = self._get_post(self._post_data[0]['it'], post, 'it')
|
||
|
index = self.get_post_index()
|
||
|
index.update_object(post, using=DEFAULT_ALIAS)
|
||
|
indexed = index.prepared_data
|
||
|
self.assertEqual('First post', indexed['title'])
|
||
|
self.assertEqual('This is the description', indexed['description'])
|
||
|
self.assertEqual('First post first line This is the description category 1', indexed['text'])
|
||
|
self.assertEqual('/en/page-two/2015/10/15/first-post/', indexed['url'])
|
||
|
|