public virtual void TestReleaseSnapshot()
{
Directory dir = NewDirectory();
IndexWriter writer = new IndexWriter(dir, GetConfig(Random(), DeletionPolicy));
SnapshotDeletionPolicy sdp = (SnapshotDeletionPolicy)writer.Config.DelPolicy;
PrepareIndexAndSnapshots(sdp, writer, 1);
// Create another commit - we must do that, because otherwise the "snapshot"
// files will still remain in the index, since it's the last commit.
writer.AddDocument(new Document());
writer.Commit();
// Release
string segFileName = Snapshots[0].SegmentsFileName;
sdp.Release(Snapshots[0]);
writer.DeleteUnusedFiles();
writer.Dispose();
Assert.IsFalse(SlowFileExists(dir, segFileName), "segments file should not be found in dirctory: " + segFileName);
dir.Dispose();
}