
Plucene::TestCase - Handy functions when testing Plucene

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

$DIRA 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.
$WRITERA variable holding the current Index::Writer object, if there is one.
$READERA variable holding the current Index::Reader object, if there is one.
$ANALYZERA variable holding the class name of the desired Analysis::Analyzer class.
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.
Same as new_index, but doesn't create a new index, rather re-uses an old one.
Add a new document to the index, with the given fields and values
Opens an index reader in $READER and runs the block.
Searches for the query given. If any fields are not specified, they will be assumed to be the default text. Returns a list of IDs. The value of $ANALYZER will be used to construct an analyzer for the query string.