Exemplo n.º 1
0
    def test_search_by_type(self, config, root):
        from kotti.views.util import search_content
        request = DummyRequest()
        doc1, doc11, doc12, file1 = create_contents(root)
        options = {'types': ['content']}
        results = search_content(u'First ', request, options)
        assert len(results) == 1
        assert results[0]['name'] == doc1.name

        options = {'types': ['file']}
        results = search_content(u'First ', request, options)
        assert len(results) == 1
        assert results[0]['name'] == file1.name
Exemplo n.º 2
0
 def test_search_content(self):
     from kotti.views.util import search_content
     request = DummyRequest()
     doc1, doc11, doc12, file1 = create_contents()
     results = search_content(u'First Document', request)
     assert len(results) == 1
     assert results[0]['name'] == u'doc1'
     assert results[0]['title'] == u'First Document'
     results = search_content(u'Document', request)
     assert len(results) == 3
     assert results[1]['name'] == 'doc11'
     assert results[1]['title'] == 'Second Document'
     assert results[1]['path'] == '/doc1/doc11/'
Exemplo n.º 3
0
 def test_search_content(self, db_session):
     from kotti.views.util import search_content
     request = DummyRequest()
     doc1, doc11, doc12, file1 = create_contents()
     results = search_content(u'First Document', request)
     assert len(results) == 1
     assert results[0]['name'] == u'doc1'
     assert results[0]['title'] == u'First Document'
     results = search_content(u'Document', request)
     # The frontpage contains 'Documentation' in its body!
     assert len(results) == 4
     assert results[1]['name'] == 'doc11'
     assert results[1]['title'] == 'Second Document'
     assert results[1]['path'] == '/doc1/doc11/'
     assert results[-1]['path'] == '/'
Exemplo n.º 4
0
 def test_search_content(self, db_session):
     from kotti.views.util import search_content
     request = DummyRequest()
     doc1, doc11, doc12, file1 = create_contents()
     results = search_content(u'First Document', request)
     assert len(results) == 1
     assert results[0]['name'] == u'doc1'
     assert results[0]['title'] == u'First Document'
     results = search_content(u'Document', request)
     # The frontpage contains 'Documentation' in its body!
     assert len(results) == 4
     assert results[1]['name'] == 'doc11'
     assert results[1]['title'] == 'Second Document'
     assert results[1]['path'] == '/doc1/doc11/'
     assert results[-1]['path'] == '/'
Exemplo n.º 5
0
 def test_search_content_without_permission(self, config, db_session):
     from kotti.views.util import search_content
     request = DummyRequest()
     create_contents()
     config.testing_securitypolicy(permissive=False)
     results = search_content(u'Document', request)
     assert len(results) == 0
Exemplo n.º 6
0
def test_search_content_without_permission(config, root):
    from kotti.views.util import search_content
    request = DummyRequest()
    _create_contents(root)
    config.testing_securitypolicy(permissive=False)
    results = search_content('Document', request)
    assert len(results) == 0
Exemplo n.º 7
0
def test_search_content_without_permission(config, root):
    from kotti.views.util import search_content

    request = DummyRequest()
    _create_contents(root)
    config.testing_securitypolicy(permissive=False)
    results = search_content("Document", request)
    assert len(results) == 0
Exemplo n.º 8
0
    def test_search_content(self):
        from kotti import main
        from kotti.views.util import search_content

        settings = self.required_settings()
        settings['kotti.search_content'] = 'kotti.tests.test_app._dummy_search'
        main({}, **settings)
        assert search_content(u"Nuno") == u"Not found. Sorry!"
Exemplo n.º 9
0
    def test_search_content(self, db_session):
        from kotti import main
        from kotti.views.util import search_content

        settings = self.required_settings()
        settings['kotti.search_content'] = 'kotti.testing.dummy_search'
        with patch('kotti.resources.initialize_sql'):
            main({}, **settings)
        assert search_content(u"Nuno") == u"Not found. Sorry!"
Exemplo n.º 10
0
def test_search_file_description(root):
    from kotti.views.util import search_content
    request = DummyRequest()
    doc1, doc11, doc12, file1 = _create_contents(root)
    results = search_content('this is a file', request)
    assert len(results) == 1
    assert results[0]['name'] == 'file1'
    assert results[0]['title'] == 'First File'
    assert results[0]['path'] == '/doc1/file1/'
Exemplo n.º 11
0
    def test_search_content(self, db_session):
        from kotti import main
        from kotti.views.util import search_content

        settings = self.required_settings()
        settings['kotti.search_content'] = 'kotti.testing.dummy_search'
        with patch('kotti.resources.initialize_sql'):
            main({}, **settings)
        assert search_content(u"Nuno") == u"Not found. Sorry!"
Exemplo n.º 12
0
 def test_search_file_description(self, db_session):
     from kotti.views.util import search_content
     request = DummyRequest()
     doc1, doc11, doc12, file1 = create_contents()
     results = search_content(u'this is a file', request)
     assert len(results) == 1
     assert results[0]['name'] == 'file1'
     assert results[0]['title'] == 'First File'
     assert results[0]['path'] == '/doc1/file1/'
Exemplo n.º 13
0
def test_search_file_description(root):
    from kotti.views.util import search_content

    request = DummyRequest()
    doc1, doc11, doc12, file1 = _create_contents(root)
    results = search_content("this is a file", request)
    assert len(results) == 1
    assert results[0]["name"] == "file1"
    assert results[0]["title"] == "First File"
    assert results[0]["path"] == "/doc1/file1/"
Exemplo n.º 14
0
    def test_search_content(self, db_session):
        from kotti import main
        from kotti.views.util import search_content

        settings = self.required_settings()
        settings["kotti.search_content"] = "kotti.testing.dummy_search"
        with patch("kotti.resources.initialize_sql"):
            with patch("kotti.filedepot.TweenFactory"):
                main({}, **settings)
        assert search_content("Nuno") == "Not found. Sorry!"
Exemplo n.º 15
0
    def test_search_content(self, db_session):
        from kotti import main
        from kotti.views.util import search_content

        settings = self.required_settings()
        settings["kotti.search_content"] = "kotti.testing.dummy_search"
        with patch("kotti.resources.initialize_sql"):
            with patch("kotti.filedepot.TweenFactory"):
                main({}, **settings)
        assert search_content("Nuno") == "Not found. Sorry!"
Exemplo n.º 16
0
def test_search_file_description(root):
    from kotti.views.util import search_content

    request = DummyRequest()
    doc1, doc11, doc12, file1 = _create_contents(root)
    results = search_content("this is a file", request)
    assert len(results) == 1
    assert results[0]["name"] == "file1"
    assert results[0]["title"] == "First File"
    assert results[0]["path"] == "/doc1/file1/"
Exemplo n.º 17
0
    def test_search_without_options(self, config, root):
        from kotti import get_settings
        from kotti.views.util import search_content, default_search_content
        request = DummyRequest()

        get_settings()['kotti.search_content'][0] = (
            lambda search_term, request: default_search_content(
                search_term, request))

        doc1, doc11, doc12, file1 = create_contents(root)
        options = {'types': ['content']}
        results = search_content(u'First ', request, options)
        assert len(results) == 2
Exemplo n.º 18
0
def test_search_content(root):
    from kotti.views.util import search_content
    from kotti import DBSession
    from kotti.resources import Tag

    request = DummyRequest()
    doc1, doc11, doc12, file1 = _create_contents(root)
    results = search_content('First Document', request)
    assert len(results) == 1
    assert results[0]['name'] == 'doc1'
    assert results[0]['title'] == 'First Document'
    results = search_content('Document', request)
    # The frontpage contains 'Documentation' in its body!
    assert len(results) == 4
    assert results[1]['name'] == 'doc11'
    assert results[1]['title'] == 'Second Document'
    assert results[1]['path'] == '/doc1/doc11/'
    assert results[1]['path'][-1] == '/'

    animals, cat, dog, \
        monkey, gorilla, monkey_file = _create_contents_with_tags()

    tags = DBSession.query(Tag).all()
    assert len(tags) == 6
    results = search_content('Animals', request)
    assert len(results) == 6
    results = search_content('Cat', request)
    assert len(results) == 1
    results = search_content('Primate', request)
    assert len(results) == 3

    # Tags were included in general search by modifying the pre-existing
    # approach, wherein searching first worked on title and description,
    # then on body, so that the search order became:
    #
    #     first on title + description
    #         then on tags
    #             then on body
    #
    # So we test here to assure search results come back in that order.
    # Searching on 'Animals', we should find all 6 content items, and the
    # first item should be the Animals folder, found with a title hit, and
    # the other items were found via tags.
    #
    # Note: this ordering is done to have some method, but it does not
    #       necessarily constitute a specification.
    #
    results = search_content('Animals', request)
    assert len(results) == 6
    assert results[0]['name'] == 'animals'
Exemplo n.º 19
0
    def test_search_content(self, root):
        from kotti.views.util import search_content
        from kotti import DBSession
        from kotti.resources import Tag

        request = DummyRequest()
        doc1, doc11, doc12, file1 = create_contents(root)
        results = search_content(u'First Document', request)
        assert len(results) == 1
        assert results[0]['name'] == u'doc1'
        assert results[0]['title'] == u'First Document'
        results = search_content(u'Document', request)
        # The frontpage contains 'Documentation' in its body!
        assert len(results) == 4
        assert results[1]['name'] == u'doc11'
        assert results[1]['title'] == u'Second Document'
        assert results[1]['path'] == '/doc1/doc11/'
        assert results[1]['path'][-1] == '/'

        animals, cat, dog, \
            monkey, gorilla, monkey_file = create_contents_with_tags()

        tags = DBSession.query(Tag).all()
        assert len(tags) == 6
        results = search_content(u'Animals', request)
        assert len(results) == 6
        results = search_content(u'Cat', request)
        assert len(results) == 1
        results = search_content(u'Primate', request)
        assert len(results) == 3

        # Tags were included in general search by modifying the pre-existing
        # approach, wherein searching first worked on title and description,
        # then on body, so that the search order became:
        #
        #     first on title + description
        #         then on tags
        #             then on body
        #
        # So we test here to assure search results come back in that order.
        # Searching on 'Animals', we should find all 6 content items, and the
        # first item should be the Animals folder, found with a title hit, and
        # the other items were found via tags.
        #
        # Note: this ordering is done to have some method, but it does not
        #       necessarily constitute a specification.
        #
        results = search_content(u'Animals', request)
        assert len(results) == 6
        assert results[0]['name'] == 'animals'
Exemplo n.º 20
0
def search_results(context, request):
    results = []
    if "search-term" in request.POST:
        search_term = request.POST["search-term"]
        results = search_content(search_term, request)
    return {"results": results}
Exemplo n.º 21
0
def search_results(context, request):
    results = []
    if u"search-term" in request.POST:
        search_term = request.POST[u"search-term"]
        results = search_content(search_term, request)
    return {"results": results}
Exemplo n.º 22
0
def test_search_empty_content(db_session):
    from kotti.views.util import search_content
    request = DummyRequest()
    results = search_content('teststring', request)
    assert results == []
Exemplo n.º 23
0
 def test_search_empty_content(self):
     from kotti.views.util import search_content
     request = DummyRequest()
     results = search_content(request, u'teststring')
     assert results == []
Exemplo n.º 24
0
def test_search_empty_content(db_session):
    from kotti.views.util import search_content

    request = DummyRequest()
    results = search_content("teststring", request)
    assert results == []
Exemplo n.º 25
0
def search_results(context, request):
    results = []
    if 'search-term' in request.POST:
        search_term = request.POST['search-term']
        results = search_content(search_term, request)
    return {'results': results}
Exemplo n.º 26
0
 def test_search_empty_content(self, db_session):
     from kotti.views.util import search_content
     request = DummyRequest()
     results = search_content(request, u'teststring')
     assert results == []
Exemplo n.º 27
0
Arquivo: view.py Projeto: Kotti/Kotti
def search_results(context, request):
    results = []
    if u'search-term' in request.POST:
        search_term = request.POST[u'search-term']
        results = search_content(search_term, request)
    return {'results': results}