2009-05-31 12:47:42 -05:00
|
|
|
# -*- coding: utf-8 -*-
|
|
|
|
"""
|
|
|
|
test_search
|
|
|
|
~~~~~~~~~~~
|
|
|
|
|
|
|
|
Test the search index builder.
|
|
|
|
|
2010-01-01 07:09:13 -06:00
|
|
|
:copyright: Copyright 2007-2010 by the Sphinx team, see AUTHORS.
|
2009-05-31 12:47:42 -05:00
|
|
|
:license: BSD, see LICENSE for details.
|
|
|
|
"""
|
|
|
|
|
|
|
|
from docutils import frontend, utils, nodes
|
|
|
|
from docutils.parsers import rst
|
|
|
|
|
|
|
|
from sphinx.search import IndexBuilder
|
|
|
|
|
|
|
|
|
|
|
|
def setup_module():
|
|
|
|
global settings, parser
|
|
|
|
optparser = frontend.OptionParser(components=(rst.Parser,))
|
|
|
|
settings = optparser.get_default_values()
|
|
|
|
parser = rst.Parser()
|
|
|
|
|
|
|
|
|
|
|
|
FILE_CONTENTS = '''\
|
|
|
|
.. test that comments are not indexed: boson
|
|
|
|
|
|
|
|
test that non-comments are indexed: fermion
|
|
|
|
'''
|
|
|
|
|
|
|
|
def test_wordcollector():
|
|
|
|
doc = utils.new_document('test data', settings)
|
|
|
|
doc['file'] = 'dummy'
|
|
|
|
parser.parse(FILE_CONTENTS, doc)
|
|
|
|
|
|
|
|
ix = IndexBuilder(None)
|
|
|
|
ix.feed('filename', 'title', doc)
|
|
|
|
assert 'boson' not in ix._mapping
|
|
|
|
assert 'fermion' in ix._mapping
|