Plucene::TestCase(3) Handy functions when testing Plucene

SYNOPSIS


use Test::More tests => 10;
use Plucene::TestCase;
new_index {
add_document( foo => "bar" );
};
re_index {
add_document( foo => "baz" );
}
with_reader {
$READER->whatever;
}
my $hits = search("foo:ba*");

EXPORTS

$DIR
A directory which is created for the purposes of this test, in which the index will be placed. It will normally be cleaned up at the end of the test, unless $Plucene::TestCase::DEBUG is set to allow you to peruse the entrails.
$WRITER
A variable holding the current "Index::Writer" object, if there is one.
$READER
A variable holding the current "Index::Reader" object, if there is one.
$ANALYZER
A variable holding the class name of the desired "Analysis::Analyzer" class.
new_index BLOCK (Analyzer)
Create a new index, and do the following stuff in the block before closing the index writer. $WRITER is set for the duration of the block.

The optional parameter should be the class name of the analyzer to use; if not specified, the value from $ANALYZER, which in turn defaults to "Plucene::Analysis::SimpleAnalyzer", will be used.

re_index BLOCK (Analyzer)
Same as "new_index", but doesn't create a new index, rather re-uses an old one.
add_document( field1 => value1, ...)
Add a new document to the index, with the given fields and values
with_reader BLOCK
Opens an index reader in $READER and runs the block.
search
Searches for the query given. If any fields are not specified, they will be assumed to be the default "text". Returns a "Plucene::Search::Hits" object. The value of $ANALYZER will be used to construct an analyzer for the query string.