The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
#!/usr/bin/perl

=head1 NAME

delete.t - tests documents are deleted successfully

=cut

use strict;
use warnings;

use Plucene::TestCase;

use Plucene::Index::Term;
use File::Slurp;

use Test::More tests => 3;

#------------------------------------------------------------------------------
# Create an index
#------------------------------------------------------------------------------

# We need to create multiple segments, so make it big

my $term = "aaa";
new_index {
	add_document(contents => $term++) for (1 .. 50);
};

my $hits = search("contents:aaa");
is(@{ $hits->{hit_docs} }, 1, "Found one");
my $to_delete = Plucene::Index::Term->new({
		field => "contents",
		text  => "aaa"
	});
with_reader {
	$READER->delete_term($to_delete);
};

with_reader {
	ok($READER->is_deleted(0), "aaa marked as deleted");
};

$hits = search("contents:aaa");
is(@{ $hits->{hit_docs} }, 0, "Found nil");