示例#1
0
def test_render_signal(publish_mock, root_doc, invalidate_cdn_cache):
    """The document is published on the render_done signal."""
    render_done.send(sender=Document,
                     instance=root_doc,
                     invalidate_cdn_cache=invalidate_cdn_cache)
    publish_mock.delay.assert_called_once_with(
        [root_doc.pk], invalidate_cdn_cache=invalidate_cdn_cache)
示例#2
0
    def test_advanced_search_query(self):
        """Test advanced search query filter."""
        # Update a document so that it has a `css_classname` and trigger a
        # reindex via `render_done`.
        doc = Document.objects.get(pk=1)
        doc.rendered_html = '<html><body class="eval">foo()</body></html>'
        doc.save()
        render_done.send(sender=Document, instance=doc)
        self.refresh()

        class View(SearchView):
            filter_backends = (AdvancedSearchQueryBackend, )

        view = View.as_view()
        request = self.get_request('/en-US/search?css_classnames=eval')
        response = view(request)
        assert len(response.data['documents']) == response.data['count'] == 1
        assert doc.slug == response.data['documents'][0]['slug']
        assert doc.locale == response.data['documents'][0]['locale']
示例#3
0
    def test_keyword_query(self):
        """Test keyword query filter."""
        # Update a document so that it has a `css_classname` and trigger a
        # reindex via `render_done`.
        doc = Document.objects.get(pk=1)
        doc.rendered_html = '<html><body class="eval">foo()</body></html>'
        doc.save()
        render_done.send(sender=Document, instance=doc)
        self.refresh()

        class View(SearchView):
            filter_backends = (KeywordQueryBackend,)

        view = View.as_view()
        request = self.get_request('/en-US/search?css_classnames=eval')
        response = view(request)
        assert len(response.data['documents']) == response.data['count'] == 1
        assert doc.slug == response.data['documents'][0]['slug']
        assert doc.locale == response.data['documents'][0]['locale']
示例#4
0
    def test_advanced_search_query(self):
        """Test advanced search query filter."""
        # Update a document so that it has a `css_classname` and trigger a
        # reindex via `render_done`.
        doc = Document.objects.get(pk=1)
        doc.rendered_html = '<html><body class="eval">foo()</body></html>'
        doc.save()
        render_done.send(sender=Document, instance=doc)
        self.refresh()

        class View(SearchView):
            filter_backends = (AdvancedSearchQueryBackend,)

        view = View.as_view()
        request = self.get_request("/en-US/search?css_classnames=eval")
        response = view(request)
        eq_(response.data["count"], 1)
        eq_(len(response.data["documents"]), 1)
        eq_(response.data["documents"][0]["slug"], doc.slug)
        eq_(response.data["documents"][0]["locale"], doc.locale)
示例#5
0
    def test_keyword_query(self):
        """Test keyword query filter."""
        # Update a document so that it has a `css_classname` and trigger a
        # reindex via `render_done`.
        doc = Document.objects.get(pk=1)
        doc.rendered_html = '<html><body class="eval">foo()</body></html>'
        doc.save()
        render_done.send(sender=Document,
                         instance=doc,
                         invalidate_cdn_cache=False)
        self.refresh()

        class View(SearchView):
            filter_backends = (KeywordQueryBackend, )

        view = View.as_view()
        request = self.get_request("/en-US/search?css_classnames=eval")
        response = view(request)
        assert len(response.data["documents"]) == response.data["count"] == 1
        assert doc.slug == response.data["documents"][0]["slug"]
        assert doc.locale == response.data["documents"][0]["locale"]
示例#6
0
def test_render_signal(publish_mock, root_doc):
    """The document is published on the render_done signal."""
    render_done.send(sender=Document, instance=root_doc)
    publish_mock.delay.assert_called_once_with([root_doc.pk])
示例#7
0
def test_render_signal_doc_deleted(build_json_task, root_doc):
    """The JSON is not rebuilt when a deleted Document is done rendering."""
    root_doc.deleted = True
    render_done.send(sender=Document, instance=root_doc)
    assert not build_json_task.delay.called
示例#8
0
def test_render_signal(build_json_task, root_doc):
    """The JSON is rebuilt when a Document is done rendering."""
    render_done.send(sender=Document, instance=root_doc)
    assert build_json_task.delay.called