From 040ca477781688ba155f5d99b2cab289e3ba87fb Mon Sep 17 00:00:00 2001 From: Michael McCandless Date: Fri, 1 Feb 2013 14:25:44 +0000 Subject: [PATCH] add tests git-svn-id: https://svn.apache.org/repos/asf/lucene/dev/branches/lucene4547@1441458 13f79535-47bb-0310-9956-ffa450edef68 --- .../lucene/index/TestDocValuesIndexing.java | 67 +++++++++++++++++++ 1 file changed, 67 insertions(+) diff --git a/lucene/core/src/test/org/apache/lucene/index/TestDocValuesIndexing.java b/lucene/core/src/test/org/apache/lucene/index/TestDocValuesIndexing.java index fe39c175b90..bdd5defa08b 100644 --- a/lucene/core/src/test/org/apache/lucene/index/TestDocValuesIndexing.java +++ b/lucene/core/src/test/org/apache/lucene/index/TestDocValuesIndexing.java @@ -550,4 +550,71 @@ public class TestDocValuesIndexing extends LuceneTestCase { writer.close(); dir.close(); } + + public void testTypeChangeAfterCloseAndDeleteAll() throws Exception { + Directory dir = newDirectory(); + IndexWriterConfig conf = newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random())); + IndexWriter writer = new IndexWriter(dir, conf); + Document doc = new Document(); + doc.add(new NumericDocValuesField("dv", 0L)); + writer.addDocument(doc); + writer.close(); + + writer = new IndexWriter(dir, conf); + writer.deleteAll(); + doc = new Document(); + doc.add(new SortedDocValuesField("dv", new BytesRef("foo"))); + writer.addDocument(doc); + writer.close(); + dir.close(); + } + + public void testTypeChangeAfterDeleteAll() throws Exception { + Directory dir = newDirectory(); + IndexWriterConfig conf = newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random())); + IndexWriter writer = new IndexWriter(dir, conf); + Document doc = new Document(); + doc.add(new NumericDocValuesField("dv", 0L)); + writer.addDocument(doc); + writer.deleteAll(); + doc = new Document(); + doc.add(new SortedDocValuesField("dv", new BytesRef("foo"))); + writer.addDocument(doc); + writer.close(); + dir.close(); + } + + public void testTypeChangeAfterCommitAndDeleteAll() throws Exception { + Directory dir = newDirectory(); + IndexWriterConfig conf = newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random())); + IndexWriter writer = new IndexWriter(dir, conf); + Document doc = new Document(); + doc.add(new NumericDocValuesField("dv", 0L)); + writer.addDocument(doc); + writer.commit(); + writer.deleteAll(); + doc = new Document(); + doc.add(new SortedDocValuesField("dv", new BytesRef("foo"))); + writer.addDocument(doc); + writer.close(); + dir.close(); + } + + public void testTypeChangeAfterOpenCreate() throws Exception { + Directory dir = newDirectory(); + IndexWriterConfig conf = newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random())); + IndexWriter writer = new IndexWriter(dir, conf); + Document doc = new Document(); + doc.add(new NumericDocValuesField("dv", 0L)); + writer.addDocument(doc); + writer.close(); + conf.setOpenMode(IndexWriterConfig.OpenMode.CREATE); + writer = new IndexWriter(dir, conf); + writer.deleteAll(); + doc = new Document(); + doc.add(new SortedDocValuesField("dv", new BytesRef("foo"))); + writer.addDocument(doc); + writer.close(); + dir.close(); + } }