You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by rm...@apache.org on 2013/04/01 18:30:05 UTC
svn commit: r1463191 [4/8] - in /lucene/dev/trunk: lucene/
lucene/analysis/common/src/java/org/apache/lucene/analysis/ar/
lucene/analysis/common/src/java/org/apache/lucene/analysis/bg/
lucene/analysis/common/src/java/org/apache/lucene/analysis/br/ luce...
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/br/TestBrazilianStemFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/br/TestBrazilianStemFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/br/TestBrazilianStemFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/br/TestBrazilianStemFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -20,23 +20,32 @@ package org.apache.lucene.analysis.br;
import java.io.Reader;
import java.io.StringReader;
-import org.apache.lucene.analysis.BaseTokenStreamTestCase;
import org.apache.lucene.analysis.MockTokenizer;
import org.apache.lucene.analysis.TokenStream;
import org.apache.lucene.analysis.Tokenizer;
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
/**
* Simple tests to ensure the Brazilian stem filter factory is working.
*/
-public class TestBrazilianStemFilterFactory extends BaseTokenStreamTestCase {
+public class TestBrazilianStemFilterFactory extends BaseTokenStreamFactoryTestCase {
/**
* Ensure the filter actually stems and normalizes text.
*/
public void testStemming() throws Exception {
Reader reader = new StringReader("BrasÃlia");
Tokenizer tokenizer = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
- BrazilianStemFilterFactory factory = new BrazilianStemFilterFactory();
- TokenStream stream = factory.create(tokenizer);
+ TokenStream stream = tokenFilterFactory("BrazilianStem").create(tokenizer);
assertTokenStreamContents(stream, new String[] { "brasil" });
}
+
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ tokenFilterFactory("BrazilianStem", "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/charfilter/TestHTMLStripCharFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/charfilter/TestHTMLStripCharFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/charfilter/TestHTMLStripCharFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/charfilter/TestHTMLStripCharFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -17,28 +17,24 @@ package org.apache.lucene.analysis.charf
* limitations under the License.
*/
-import java.io.IOException;
+import java.io.Reader;
import java.io.StringReader;
-import java.util.HashMap;
-import java.util.Map;
-import org.apache.lucene.analysis.*;
+import org.apache.lucene.analysis.MockTokenizer;
+import org.apache.lucene.analysis.TokenStream;
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
/**
* Simple tests to ensure this factory is working
*/
-public class TestHTMLStripCharFilterFactory extends BaseTokenStreamTestCase {
+public class TestHTMLStripCharFilterFactory extends BaseTokenStreamFactoryTestCase {
- public void testNothingChanged() throws IOException {
+ public void testNothingChanged() throws Exception {
// 11111111112
// 012345678901234567890
final String text = "this is only a test.";
- HTMLStripCharFilterFactory factory = new HTMLStripCharFilterFactory();
- Map<String,String> args = new HashMap<String,String>();
- args.put("escapedTags", "a, Title");
- factory.init(args);
- CharFilter cs = factory.create(new StringReader(text));
+ Reader cs = charFilterFactory("HTMLStrip", "escapedTags", "a, Title").create(new StringReader(text));
TokenStream ts = new MockTokenizer(cs, MockTokenizer.WHITESPACE, false);
assertTokenStreamContents(ts,
new String[] { "this", "is", "only", "a", "test." },
@@ -46,14 +42,11 @@ public class TestHTMLStripCharFilterFact
new int[] { 4, 7, 12, 14, 20 });
}
- public void testNoEscapedTags() throws IOException {
+ public void testNoEscapedTags() throws Exception {
// 11111111112222222222333333333344
// 012345678901234567890123456789012345678901
final String text = "<u>this</u> is <b>only</b> a <I>test</I>.";
- HTMLStripCharFilterFactory factory = new HTMLStripCharFilterFactory();
- Map<String,String> args = new HashMap<String,String>();
- factory.init(args);
- CharFilter cs = factory.create(new StringReader(text));
+ Reader cs = charFilterFactory("HTMLStrip").create(new StringReader(text));
TokenStream ts = new MockTokenizer(cs, MockTokenizer.WHITESPACE, false);
assertTokenStreamContents(ts,
new String[] { "this", "is", "only", "a", "test." },
@@ -61,15 +54,11 @@ public class TestHTMLStripCharFilterFact
new int[] { 11, 14, 26, 28, 41 });
}
- public void testEscapedTags() throws IOException {
+ public void testEscapedTags() throws Exception {
// 11111111112222222222333333333344
// 012345678901234567890123456789012345678901
final String text = "<u>this</u> is <b>only</b> a <I>test</I>.";
- HTMLStripCharFilterFactory factory = new HTMLStripCharFilterFactory();
- Map<String,String> args = new HashMap<String,String>();
- args.put("escapedTags", "U i");
- factory.init(args);
- CharFilter cs = factory.create(new StringReader(text));
+ Reader cs = charFilterFactory("HTMLStrip", "escapedTags", "U i").create(new StringReader(text));
TokenStream ts = new MockTokenizer(cs, MockTokenizer.WHITESPACE, false);
assertTokenStreamContents(ts,
new String[] { "<u>this</u>", "is", "only", "a", "<I>test</I>." },
@@ -77,15 +66,11 @@ public class TestHTMLStripCharFilterFact
new int[] { 11, 14, 26, 28, 41 });
}
- public void testSeparatorOnlyEscapedTags() throws IOException {
+ public void testSeparatorOnlyEscapedTags() throws Exception {
// 11111111112222222222333333333344
// 012345678901234567890123456789012345678901
final String text = "<u>this</u> is <b>only</b> a <I>test</I>.";
- HTMLStripCharFilterFactory factory = new HTMLStripCharFilterFactory();
- Map<String,String> args = new HashMap<String,String>();
- args.put("escapedTags", ",, , ");
- factory.init(args);
- CharFilter cs = factory.create(new StringReader(text));
+ Reader cs = charFilterFactory("HTMLStrip", "escapedTags", ",, , ").create(new StringReader(text));
TokenStream ts = new MockTokenizer(cs, MockTokenizer.WHITESPACE, false);
assertTokenStreamContents(ts,
new String[] { "this", "is", "only", "a", "test." },
@@ -93,15 +78,11 @@ public class TestHTMLStripCharFilterFact
new int[] { 11, 14, 26, 28, 41 });
}
- public void testEmptyEscapedTags() throws IOException {
+ public void testEmptyEscapedTags() throws Exception {
// 11111111112222222222333333333344
// 012345678901234567890123456789012345678901
final String text = "<u>this</u> is <b>only</b> a <I>test</I>.";
- HTMLStripCharFilterFactory factory = new HTMLStripCharFilterFactory();
- Map<String,String> args = new HashMap<String,String>();
- args.put("escapedTags", "");
- factory.init(args);
- CharFilter cs = factory.create(new StringReader(text));
+ Reader cs = charFilterFactory("HTMLStrip", "escapedTags", "").create(new StringReader(text));
TokenStream ts = new MockTokenizer(cs, MockTokenizer.WHITESPACE, false);
assertTokenStreamContents(ts,
new String[] { "this", "is", "only", "a", "test." },
@@ -109,19 +90,25 @@ public class TestHTMLStripCharFilterFact
new int[] { 11, 14, 26, 28, 41 });
}
- public void testSingleEscapedTag() throws IOException {
+ public void testSingleEscapedTag() throws Exception {
// 11111111112222222222333333333344
// 012345678901234567890123456789012345678901
final String text = "<u>this</u> is <b>only</b> a <I>test</I>.";
- HTMLStripCharFilterFactory factory = new HTMLStripCharFilterFactory();
- Map<String,String> args = new HashMap<String,String>();
- args.put("escapedTags", ", B\r\n\t");
- factory.init(args);
- CharFilter cs = factory.create(new StringReader(text));
+ Reader cs = charFilterFactory("HTMLStrip", "escapedTags", ", B\r\n\t").create(new StringReader(text));
TokenStream ts = new MockTokenizer(cs, MockTokenizer.WHITESPACE, false);
assertTokenStreamContents(ts,
new String[] { "this", "is", "<b>only</b>", "a", "test." },
new int[] { 3, 12, 15, 27, 32 },
new int[] { 11, 14, 26, 28, 41 });
}
+
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ charFilterFactory("HTMLStrip", "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/charfilter/TestMappingCharFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/charfilter/TestMappingCharFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/charfilter/TestMappingCharFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/charfilter/TestMappingCharFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -17,12 +17,14 @@ package org.apache.lucene.analysis.charf
* limitations under the License.
*/
-import org.apache.lucene.util.LuceneTestCase;
+import java.util.HashMap;
-public class TestMappingCharFilterFactory extends LuceneTestCase {
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
+
+public class TestMappingCharFilterFactory extends BaseTokenStreamFactoryTestCase {
public void testParseString() throws Exception {
- MappingCharFilterFactory f = new MappingCharFilterFactory();
+ MappingCharFilterFactory f = new MappingCharFilterFactory(new HashMap<String,String>());
try {
f.parseString( "\\" );
@@ -49,4 +51,14 @@ public class TestMappingCharFilterFactor
}
catch( NumberFormatException expected ){}
}
+
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ charFilterFactory("Mapping", "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/cjk/TestCJKBigramFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/cjk/TestCJKBigramFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/cjk/TestCJKBigramFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/cjk/TestCJKBigramFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -19,49 +19,48 @@ package org.apache.lucene.analysis.cjk;
import java.io.Reader;
import java.io.StringReader;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Map;
-import org.apache.lucene.analysis.BaseTokenStreamTestCase;
import org.apache.lucene.analysis.TokenStream;
-import org.apache.lucene.analysis.standard.StandardTokenizer;
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
/**
* Simple tests to ensure the CJK bigram factory is working.
*/
-public class TestCJKBigramFilterFactory extends BaseTokenStreamTestCase {
+public class TestCJKBigramFilterFactory extends BaseTokenStreamFactoryTestCase {
public void testDefaults() throws Exception {
Reader reader = new StringReader("å¤ãã®å¦çã試é¨ã«è½ã¡ãã");
- CJKBigramFilterFactory factory = new CJKBigramFilterFactory();
- factory.setLuceneMatchVersion(TEST_VERSION_CURRENT);
- Map<String, String> args = Collections.emptyMap();
- factory.init(args);
- TokenStream stream = factory.create(new StandardTokenizer(TEST_VERSION_CURRENT, reader));
+ TokenStream stream = tokenizerFactory("standard").create(reader);
+ stream = tokenFilterFactory("CJKBigram").create(stream);
assertTokenStreamContents(stream,
new String[] { "å¤ã", "ãã®", "ã®å¦", "å¦ç", "çã", "ã試", "試é¨", "é¨ã«", "ã«è½", "è½ã¡", "ã¡ã" });
}
public void testHanOnly() throws Exception {
Reader reader = new StringReader("å¤ãã®å¦çã試é¨ã«è½ã¡ãã");
- CJKBigramFilterFactory factory = new CJKBigramFilterFactory();
- Map<String,String> args = new HashMap<String,String>();
- args.put("hiragana", "false");
- factory.init(args);
- TokenStream stream = factory.create(new StandardTokenizer(TEST_VERSION_CURRENT, reader));
+ TokenStream stream = tokenizerFactory("standard").create(reader);
+ stream = tokenFilterFactory("CJKBigram",
+ "hiragana", "false").create(stream);
assertTokenStreamContents(stream,
new String[] { "å¤", "ã", "ã®", "å¦ç", "ã", "試é¨", "ã«", "è½", "ã¡", "ã" });
}
public void testHanOnlyUnigrams() throws Exception {
Reader reader = new StringReader("å¤ãã®å¦çã試é¨ã«è½ã¡ãã");
- CJKBigramFilterFactory factory = new CJKBigramFilterFactory();
- Map<String,String> args = new HashMap<String,String>();
- args.put("hiragana", "false");
- args.put("outputUnigrams", "true");
- factory.init(args);
- TokenStream stream = factory.create(new StandardTokenizer(TEST_VERSION_CURRENT, reader));
+ TokenStream stream = tokenizerFactory("standard").create(reader);
+ stream = tokenFilterFactory("CJKBigram",
+ "hiragana", "false",
+ "outputUnigrams", "true").create(stream);
assertTokenStreamContents(stream,
new String[] { "å¤", "ã", "ã®", "å¦", "å¦ç", "ç", "ã", "試", "試é¨", "é¨", "ã«", "è½", "ã¡", "ã" });
}
+
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ tokenFilterFactory("CJKBigram", "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/cjk/TestCJKWidthFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/cjk/TestCJKWidthFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/cjk/TestCJKWidthFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/cjk/TestCJKWidthFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -20,18 +20,28 @@ package org.apache.lucene.analysis.cjk;
import java.io.Reader;
import java.io.StringReader;
-import org.apache.lucene.analysis.BaseTokenStreamTestCase;
import org.apache.lucene.analysis.MockTokenizer;
import org.apache.lucene.analysis.TokenStream;
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
/**
* Simple tests to ensure the CJKWidthFilterFactory is working
*/
-public class TestCJKWidthFilterFactory extends BaseTokenStreamTestCase {
+public class TestCJKWidthFilterFactory extends BaseTokenStreamFactoryTestCase {
public void test() throws Exception {
Reader reader = new StringReader("ï¼´ï½
ï½ï½ ï¼ï¼ï¼ï¼");
- CJKWidthFilterFactory factory = new CJKWidthFilterFactory();
- TokenStream stream = factory.create(new MockTokenizer(reader, MockTokenizer.WHITESPACE, false));
+ TokenStream stream = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
+ stream = tokenFilterFactory("CJKWidth").create(stream);
assertTokenStreamContents(stream, new String[] { "Test", "1234" });
}
+
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ tokenFilterFactory("CJKWidth", "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/commongrams/TestCommonGramsFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/commongrams/TestCommonGramsFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/commongrams/TestCommonGramsFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/commongrams/TestCommonGramsFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -17,37 +17,30 @@ package org.apache.lucene.analysis.commo
* limitations under the License.
*/
-import org.apache.lucene.analysis.BaseTokenStreamTestCase;
import org.apache.lucene.analysis.MockTokenizer;
import org.apache.lucene.analysis.TokenStream;
import org.apache.lucene.analysis.Tokenizer;
import org.apache.lucene.analysis.core.TestStopFilter;
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
import org.apache.lucene.analysis.util.CharArraySet;
import org.apache.lucene.analysis.util.ClasspathResourceLoader;
import org.apache.lucene.analysis.util.ResourceLoader;
import java.io.StringReader;
-import java.util.Collections;
-import java.util.Map;
-import java.util.HashMap;
/**
* Tests pretty much copied from StopFilterFactoryTest We use the test files
* used by the StopFilterFactoryTest TODO: consider creating separate test files
* so this won't break if stop filter test files change
**/
-public class TestCommonGramsFilterFactory extends BaseTokenStreamTestCase {
+public class TestCommonGramsFilterFactory extends BaseTokenStreamFactoryTestCase {
public void testInform() throws Exception {
ResourceLoader loader = new ClasspathResourceLoader(TestStopFilter.class);
assertTrue("loader is null and it shouldn't be", loader != null);
- CommonGramsFilterFactory factory = new CommonGramsFilterFactory();
- Map<String, String> args = new HashMap<String, String>();
- args.put("words", "stop-1.txt");
- args.put("ignoreCase", "true");
- factory.setLuceneMatchVersion(TEST_VERSION_CURRENT);
- factory.init(args);
- factory.inform(loader);
+ CommonGramsFilterFactory factory = (CommonGramsFilterFactory) tokenFilterFactory("CommonGrams", TEST_VERSION_CURRENT, loader,
+ "words", "stop-1.txt",
+ "ignoreCase", "true");
CharArraySet words = factory.getCommonWords();
assertTrue("words is null and it shouldn't be", words != null);
assertTrue("words Size: " + words.size() + " is not: " + 2,
@@ -55,11 +48,9 @@ public class TestCommonGramsFilterFactor
assertTrue(factory.isIgnoreCase() + " does not equal: " + true, factory
.isIgnoreCase() == true);
- factory = new CommonGramsFilterFactory();
- args.put("words", "stop-1.txt, stop-2.txt");
- factory.setLuceneMatchVersion(TEST_VERSION_CURRENT);
- factory.init(args);
- factory.inform(loader);
+ factory = (CommonGramsFilterFactory) tokenFilterFactory("CommonGrams", TEST_VERSION_CURRENT, loader,
+ "words", "stop-1.txt, stop-2.txt",
+ "ignoreCase", "true");
words = factory.getCommonWords();
assertTrue("words is null and it shouldn't be", words != null);
assertTrue("words Size: " + words.size() + " is not: " + 4,
@@ -67,12 +58,10 @@ public class TestCommonGramsFilterFactor
assertTrue(factory.isIgnoreCase() + " does not equal: " + true, factory
.isIgnoreCase() == true);
- factory = new CommonGramsFilterFactory();
- args.put("words", "stop-snowball.txt");
- args.put("format", "snowball");
- factory.setLuceneMatchVersion(TEST_VERSION_CURRENT);
- factory.init(args);
- factory.inform(loader);
+ factory = (CommonGramsFilterFactory) tokenFilterFactory("CommonGrams", TEST_VERSION_CURRENT, loader,
+ "words", "stop-snowball.txt",
+ "format", "snowball",
+ "ignoreCase", "true");
words = factory.getCommonWords();
assertEquals(8, words.size());
assertTrue(words.contains("he"));
@@ -89,13 +78,7 @@ public class TestCommonGramsFilterFactor
* If no words are provided, then a set of english default stopwords is used.
*/
public void testDefaults() throws Exception {
- ResourceLoader loader = new ClasspathResourceLoader(TestStopFilter.class);
- assertTrue("loader is null and it shouldn't be", loader != null);
- CommonGramsFilterFactory factory = new CommonGramsFilterFactory();
- factory.setLuceneMatchVersion(TEST_VERSION_CURRENT);
- Map<String, String> args = Collections.emptyMap();
- factory.init(args);
- factory.inform(loader);
+ CommonGramsFilterFactory factory = (CommonGramsFilterFactory) tokenFilterFactory("CommonGrams");
CharArraySet words = factory.getCommonWords();
assertTrue("words is null and it shouldn't be", words != null);
assertTrue(words.contains("the"));
@@ -104,4 +87,14 @@ public class TestCommonGramsFilterFactor
assertTokenStreamContents(stream,
new String[] { "testing", "testing_the", "the", "the_factory", "factory" });
}
+
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ tokenFilterFactory("CommonGrams", "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/commongrams/TestCommonGramsQueryFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/commongrams/TestCommonGramsQueryFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/commongrams/TestCommonGramsQueryFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/commongrams/TestCommonGramsQueryFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -17,37 +17,30 @@ package org.apache.lucene.analysis.commo
* limitations under the License.
*/
-import org.apache.lucene.analysis.BaseTokenStreamTestCase;
import org.apache.lucene.analysis.MockTokenizer;
import org.apache.lucene.analysis.TokenStream;
import org.apache.lucene.analysis.Tokenizer;
import org.apache.lucene.analysis.core.TestStopFilter;
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
import org.apache.lucene.analysis.util.CharArraySet;
import org.apache.lucene.analysis.util.ClasspathResourceLoader;
import org.apache.lucene.analysis.util.ResourceLoader;
import java.io.StringReader;
-import java.util.Collections;
-import java.util.Map;
-import java.util.HashMap;
/**
* Tests pretty much copied from StopFilterFactoryTest We use the test files
* used by the StopFilterFactoryTest TODO: consider creating separate test files
* so this won't break if stop filter test files change
**/
-public class TestCommonGramsQueryFilterFactory extends BaseTokenStreamTestCase {
+public class TestCommonGramsQueryFilterFactory extends BaseTokenStreamFactoryTestCase {
public void testInform() throws Exception {
ResourceLoader loader = new ClasspathResourceLoader(TestStopFilter.class);
assertTrue("loader is null and it shouldn't be", loader != null);
- CommonGramsQueryFilterFactory factory = new CommonGramsQueryFilterFactory();
- Map<String, String> args = new HashMap<String, String>();
- args.put("words", "stop-1.txt");
- args.put("ignoreCase", "true");
- factory.setLuceneMatchVersion(TEST_VERSION_CURRENT);
- factory.init(args);
- factory.inform(loader);
+ CommonGramsQueryFilterFactory factory = (CommonGramsQueryFilterFactory) tokenFilterFactory("CommonGramsQuery", TEST_VERSION_CURRENT, loader,
+ "words", "stop-1.txt",
+ "ignoreCase", "true");
CharArraySet words = factory.getCommonWords();
assertTrue("words is null and it shouldn't be", words != null);
assertTrue("words Size: " + words.size() + " is not: " + 2,
@@ -55,11 +48,9 @@ public class TestCommonGramsQueryFilterF
assertTrue(factory.isIgnoreCase() + " does not equal: " + true, factory
.isIgnoreCase() == true);
- factory = new CommonGramsQueryFilterFactory();
- args.put("words", "stop-1.txt, stop-2.txt");
- factory.setLuceneMatchVersion(TEST_VERSION_CURRENT);
- factory.init(args);
- factory.inform(loader);
+ factory = (CommonGramsQueryFilterFactory) tokenFilterFactory("CommonGramsQuery", TEST_VERSION_CURRENT, loader,
+ "words", "stop-1.txt, stop-2.txt",
+ "ignoreCase", "true");
words = factory.getCommonWords();
assertTrue("words is null and it shouldn't be", words != null);
assertTrue("words Size: " + words.size() + " is not: " + 4,
@@ -67,12 +58,10 @@ public class TestCommonGramsQueryFilterF
assertTrue(factory.isIgnoreCase() + " does not equal: " + true, factory
.isIgnoreCase() == true);
- factory = new CommonGramsQueryFilterFactory();
- factory.setLuceneMatchVersion(TEST_VERSION_CURRENT);
- args.put("words", "stop-snowball.txt");
- args.put("format", "snowball");
- factory.init(args);
- factory.inform(loader);
+ factory = (CommonGramsQueryFilterFactory) tokenFilterFactory("CommonGramsQuery", TEST_VERSION_CURRENT, loader,
+ "words", "stop-snowball.txt",
+ "format", "snowball",
+ "ignoreCase", "true");
words = factory.getCommonWords();
assertEquals(8, words.size());
assertTrue(words.contains("he"));
@@ -89,13 +78,7 @@ public class TestCommonGramsQueryFilterF
* If no words are provided, then a set of english default stopwords is used.
*/
public void testDefaults() throws Exception {
- ResourceLoader loader = new ClasspathResourceLoader(TestStopFilter.class);
- assertTrue("loader is null and it shouldn't be", loader != null);
- CommonGramsQueryFilterFactory factory = new CommonGramsQueryFilterFactory();
- factory.setLuceneMatchVersion(TEST_VERSION_CURRENT);
- Map<String, String> args = Collections.emptyMap();
- factory.init(args);
- factory.inform(loader);
+ CommonGramsQueryFilterFactory factory = (CommonGramsQueryFilterFactory) tokenFilterFactory("CommonGramsQuery");
CharArraySet words = factory.getCommonWords();
assertTrue("words is null and it shouldn't be", words != null);
assertTrue(words.contains("the"));
@@ -104,4 +87,14 @@ public class TestCommonGramsQueryFilterF
assertTokenStreamContents(stream,
new String[] { "testing_the", "the_factory" });
}
+
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ tokenFilterFactory("CommonGramsQuery", "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/compound/TestDictionaryCompoundWordTokenFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/compound/TestDictionaryCompoundWordTokenFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/compound/TestDictionaryCompoundWordTokenFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/compound/TestDictionaryCompoundWordTokenFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -19,36 +19,36 @@ package org.apache.lucene.analysis.compo
import java.io.Reader;
import java.io.StringReader;
-import java.util.HashMap;
-import java.util.Map;
-import org.apache.lucene.analysis.BaseTokenStreamTestCase;
import org.apache.lucene.analysis.MockTokenizer;
import org.apache.lucene.analysis.TokenStream;
-import org.apache.lucene.analysis.Tokenizer;
-import org.apache.lucene.analysis.util.ClasspathResourceLoader;
-import org.apache.lucene.analysis.util.ResourceLoader;
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
/**
* Simple tests to ensure the Dictionary compound filter factory is working.
*/
-public class TestDictionaryCompoundWordTokenFilterFactory extends BaseTokenStreamTestCase {
+public class TestDictionaryCompoundWordTokenFilterFactory extends BaseTokenStreamFactoryTestCase {
/**
* Ensure the filter actually decompounds text.
*/
public void testDecompounding() throws Exception {
Reader reader = new StringReader("I like to play softball");
- Tokenizer tokenizer = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
- DictionaryCompoundWordTokenFilterFactory factory = new DictionaryCompoundWordTokenFilterFactory();
- ResourceLoader loader = new ClasspathResourceLoader(getClass());
- Map<String,String> args = new HashMap<String,String>();
- args.put("dictionary", "compoundDictionary.txt");
- factory.setLuceneMatchVersion(TEST_VERSION_CURRENT);
- factory.init(args);
- factory.inform(loader);
- TokenStream stream = factory.create(tokenizer);
+ TokenStream stream = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
+ stream = tokenFilterFactory("DictionaryCompoundWord",
+ "dictionary", "compoundDictionary.txt").create(stream);
assertTokenStreamContents(stream,
new String[] { "I", "like", "to", "play", "softball", "soft", "ball" });
}
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ tokenFilterFactory("DictionaryCompoundWord",
+ "dictionary", "compoundDictionary.txt",
+ "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/compound/TestHyphenationCompoundWordTokenFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/compound/TestHyphenationCompoundWordTokenFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/compound/TestHyphenationCompoundWordTokenFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/compound/TestHyphenationCompoundWordTokenFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -19,35 +19,24 @@ package org.apache.lucene.analysis.compo
import java.io.Reader;
import java.io.StringReader;
-import java.util.HashMap;
-import java.util.Map;
-import org.apache.lucene.analysis.BaseTokenStreamTestCase;
import org.apache.lucene.analysis.MockTokenizer;
import org.apache.lucene.analysis.TokenStream;
-import org.apache.lucene.analysis.Tokenizer;
-import org.apache.lucene.analysis.util.ClasspathResourceLoader;
-import org.apache.lucene.analysis.util.ResourceLoader;
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
/**
* Simple tests to ensure the Hyphenation compound filter factory is working.
*/
-public class TestHyphenationCompoundWordTokenFilterFactory extends BaseTokenStreamTestCase {
+public class TestHyphenationCompoundWordTokenFilterFactory extends BaseTokenStreamFactoryTestCase {
/**
* Ensure the factory works with hyphenation grammar+dictionary: using default options.
*/
public void testHyphenationWithDictionary() throws Exception {
Reader reader = new StringReader("min veninde som er lidt af en læsehest");
- Tokenizer tokenizer = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
- HyphenationCompoundWordTokenFilterFactory factory = new HyphenationCompoundWordTokenFilterFactory();
- ResourceLoader loader = new ClasspathResourceLoader(getClass());
- Map<String,String> args = new HashMap<String,String>();
- args.put("hyphenator", "da_UTF8.xml");
- args.put("dictionary", "da_compoundDictionary.txt");
- factory.setLuceneMatchVersion(TEST_VERSION_CURRENT);
- factory.init(args);
- factory.inform(loader);
- TokenStream stream = factory.create(tokenizer);
+ TokenStream stream = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
+ stream = tokenFilterFactory("HyphenationCompoundWord",
+ "hyphenator", "da_UTF8.xml",
+ "dictionary", "da_compoundDictionary.txt").create(stream);
assertTokenStreamContents(stream,
new String[] { "min", "veninde", "som", "er", "lidt", "af", "en", "læsehest", "læse", "hest" },
@@ -62,20 +51,26 @@ public class TestHyphenationCompoundWord
*/
public void testHyphenationOnly() throws Exception {
Reader reader = new StringReader("basketballkurv");
- Tokenizer tokenizer = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
- HyphenationCompoundWordTokenFilterFactory factory = new HyphenationCompoundWordTokenFilterFactory();
- ResourceLoader loader = new ClasspathResourceLoader(getClass());
- Map<String,String> args = new HashMap<String,String>();
- args.put("hyphenator", "da_UTF8.xml");
- args.put("minSubwordSize", "2");
- args.put("maxSubwordSize", "4");
- factory.setLuceneMatchVersion(TEST_VERSION_CURRENT);
- factory.init(args);
- factory.inform(loader);
- TokenStream stream = factory.create(tokenizer);
+ TokenStream stream = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
+ stream = tokenFilterFactory("HyphenationCompoundWord",
+ "hyphenator", "da_UTF8.xml",
+ "minSubwordSize", "2",
+ "maxSubwordSize", "4").create(stream);
assertTokenStreamContents(stream,
new String[] { "basketballkurv", "ba", "sket", "bal", "ball", "kurv" }
);
}
+
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ tokenFilterFactory("HyphenationCompoundWord",
+ "hyphenator", "da_UTF8.xml",
+ "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestAllAnalyzersHaveFactories.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestAllAnalyzersHaveFactories.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestAllAnalyzersHaveFactories.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestAllAnalyzersHaveFactories.java Mon Apr 1 16:30:00 2013
@@ -21,8 +21,10 @@ import java.io.Reader;
import java.io.StringReader;
import java.lang.reflect.Modifier;
import java.util.Collections;
+import java.util.HashMap;
import java.util.IdentityHashMap;
import java.util.List;
+import java.util.Map;
import java.util.Set;
import org.apache.lucene.analysis.CachingTokenFilter;
@@ -115,31 +117,35 @@ public class TestAllAnalyzersHaveFactori
continue;
}
+ Map<String,String> args = new HashMap<String,String>();
+ args.put("luceneMatchVersion", TEST_VERSION_CURRENT.toString());
+
if (Tokenizer.class.isAssignableFrom(c)) {
String clazzName = c.getSimpleName();
assertTrue(clazzName.endsWith("Tokenizer"));
String simpleName = clazzName.substring(0, clazzName.length() - 9);
- TokenizerFactory instance = TokenizerFactory.forName(simpleName);
- assertNotNull(instance);
+ TokenizerFactory instance = null;
try {
- instance.setLuceneMatchVersion(TEST_VERSION_CURRENT);
- instance.init(Collections.<String,String>emptyMap());
+ instance = TokenizerFactory.forName(simpleName, args);
+ assertNotNull(instance);
if (instance instanceof ResourceLoaderAware) {
((ResourceLoaderAware) instance).inform(loader);
}
assertSame(c, instance.create(new StringReader("")).getClass());
} catch (IllegalArgumentException e) {
+ if (!e.getMessage().contains("SPI")) {
+ throw e;
+ }
// TODO: For now pass because some factories have not yet a default config that always works
}
} else if (TokenFilter.class.isAssignableFrom(c)) {
String clazzName = c.getSimpleName();
assertTrue(clazzName.endsWith("Filter"));
String simpleName = clazzName.substring(0, clazzName.length() - (clazzName.endsWith("TokenFilter") ? 11 : 6));
- TokenFilterFactory instance = TokenFilterFactory.forName(simpleName);
- assertNotNull(instance);
+ TokenFilterFactory instance = null;
try {
- instance.setLuceneMatchVersion(TEST_VERSION_CURRENT);
- instance.init(Collections.<String,String>emptyMap());
+ instance = TokenFilterFactory.forName(simpleName, args);
+ assertNotNull(instance);
if (instance instanceof ResourceLoaderAware) {
((ResourceLoaderAware) instance).inform(loader);
}
@@ -149,17 +155,19 @@ public class TestAllAnalyzersHaveFactori
assertSame(c, createdClazz);
}
} catch (IllegalArgumentException e) {
+ if (!e.getMessage().contains("SPI")) {
+ throw e;
+ }
// TODO: For now pass because some factories have not yet a default config that always works
}
} else if (CharFilter.class.isAssignableFrom(c)) {
String clazzName = c.getSimpleName();
assertTrue(clazzName.endsWith("CharFilter"));
String simpleName = clazzName.substring(0, clazzName.length() - 10);
- CharFilterFactory instance = CharFilterFactory.forName(simpleName);
- assertNotNull(instance);
+ CharFilterFactory instance = null;
try {
- instance.setLuceneMatchVersion(TEST_VERSION_CURRENT);
- instance.init(Collections.<String,String>emptyMap());
+ instance = CharFilterFactory.forName(simpleName, args);
+ assertNotNull(instance);
if (instance instanceof ResourceLoaderAware) {
((ResourceLoaderAware) instance).inform(loader);
}
@@ -169,6 +177,9 @@ public class TestAllAnalyzersHaveFactori
assertSame(c, createdClazz);
}
} catch (IllegalArgumentException e) {
+ if (!e.getMessage().contains("SPI")) {
+ throw e;
+ }
// TODO: For now pass because some factories have not yet a default config that always works
}
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestFactories.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestFactories.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestFactories.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestFactories.java Mon Apr 1 16:30:00 2013
@@ -19,7 +19,10 @@ package org.apache.lucene.analysis.core;
import java.io.IOException;
import java.io.Reader;
-import java.util.Collections;
+import java.lang.reflect.Constructor;
+import java.lang.reflect.InvocationTargetException;
+import java.util.HashMap;
+import java.util.Map;
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.BaseTokenStreamTestCase;
@@ -27,7 +30,6 @@ import org.apache.lucene.analysis.MockTo
import org.apache.lucene.analysis.Tokenizer;
import org.apache.lucene.analysis.util.AbstractAnalysisFactory;
import org.apache.lucene.analysis.util.CharFilterFactory;
-import org.apache.lucene.analysis.util.ClasspathResourceLoader;
import org.apache.lucene.analysis.util.MultiTermAwareComponent;
import org.apache.lucene.analysis.util.ResourceLoaderAware;
import org.apache.lucene.analysis.util.StringMockResourceLoader;
@@ -59,8 +61,9 @@ public class TestFactories extends BaseT
}
private void doTestTokenizer(String tokenizer) throws IOException {
- TokenizerFactory factory = TokenizerFactory.forName(tokenizer);
- if (initialize(factory)) {
+ Class<? extends TokenizerFactory> factoryClazz = TokenizerFactory.lookupClass(tokenizer);
+ TokenizerFactory factory = (TokenizerFactory) initialize(factoryClazz);
+ if (factory != null) {
// we managed to fully create an instance. check a few more things:
// if it implements MultiTermAware, sanity check its impl
@@ -78,8 +81,9 @@ public class TestFactories extends BaseT
}
private void doTestTokenFilter(String tokenfilter) throws IOException {
- TokenFilterFactory factory = TokenFilterFactory.forName(tokenfilter);
- if (initialize(factory)) {
+ Class<? extends TokenFilterFactory> factoryClazz = TokenFilterFactory.lookupClass(tokenfilter);
+ TokenFilterFactory factory = (TokenFilterFactory) initialize(factoryClazz);
+ if (factory != null) {
// we managed to fully create an instance. check a few more things:
// if it implements MultiTermAware, sanity check its impl
@@ -97,8 +101,9 @@ public class TestFactories extends BaseT
}
private void doTestCharFilter(String charfilter) throws IOException {
- CharFilterFactory factory = CharFilterFactory.forName(charfilter);
- if (initialize(factory)) {
+ Class<? extends CharFilterFactory> factoryClazz = CharFilterFactory.lookupClass(charfilter);
+ CharFilterFactory factory = (CharFilterFactory) initialize(factoryClazz);
+ if (factory != null) {
// we managed to fully create an instance. check a few more things:
// if it implements MultiTermAware, sanity check its impl
@@ -116,36 +121,44 @@ public class TestFactories extends BaseT
}
/** tries to initialize a factory with no arguments */
- private boolean initialize(AbstractAnalysisFactory factory) throws IOException {
- boolean success = false;
+ private AbstractAnalysisFactory initialize(Class<? extends AbstractAnalysisFactory> factoryClazz) throws IOException {
+ Map<String,String> args = new HashMap<String,String>();
+ args.put("luceneMatchVersion", TEST_VERSION_CURRENT.toString());
+ Constructor<? extends AbstractAnalysisFactory> ctor;
try {
- factory.setLuceneMatchVersion(TEST_VERSION_CURRENT);
- factory.init(Collections.<String,String>emptyMap());
- if (factory instanceof ResourceLoaderAware) {
- ResourceLoaderAware resourceLoaderAware = (ResourceLoaderAware) factory;
- resourceLoaderAware.inform(new ClasspathResourceLoader(factory.getClass()));
- }
- success = true;
- } catch (IllegalArgumentException ignored) {
- // its ok if we dont provide the right parameters to throw this
+ ctor = factoryClazz.getConstructor(Map.class);
+ } catch (Exception e) {
+ throw new RuntimeException("factory '" + factoryClazz + "' does not have a proper ctor!");
+ }
+
+ AbstractAnalysisFactory factory = null;
+ try {
+ factory = ctor.newInstance(args);
+ } catch (InstantiationException e) {
+ throw new RuntimeException(e);
+ } catch (IllegalAccessException e) {
+ throw new RuntimeException(e);
+ } catch (InvocationTargetException e) {
+ if (e.getCause() instanceof IllegalArgumentException) {
+ // its ok if we dont provide the right parameters to throw this
+ return null;
+ }
}
if (factory instanceof ResourceLoaderAware) {
- success = false;
try {
((ResourceLoaderAware) factory).inform(new StringMockResourceLoader(""));
- success = true;
} catch (IOException ignored) {
// its ok if the right files arent available or whatever to throw this
} catch (IllegalArgumentException ignored) {
// is this ok? I guess so
}
}
- return success;
+ return factory;
}
// some silly classes just so we can use checkRandomData
- private TokenizerFactory assertingTokenizer = new TokenizerFactory() {
+ private TokenizerFactory assertingTokenizer = new TokenizerFactory(new HashMap<String,String>()) {
@Override
public MockTokenizer create(AttributeFactory factory, Reader input) {
return new MockTokenizer(factory, input);
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestStopFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestStopFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestStopFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestStopFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -17,51 +17,36 @@ package org.apache.lucene.analysis.core;
* limitations under the License.
*/
-import org.apache.lucene.analysis.BaseTokenStreamTestCase;
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
import org.apache.lucene.analysis.util.CharArraySet;
import org.apache.lucene.analysis.util.ClasspathResourceLoader;
import org.apache.lucene.analysis.util.ResourceLoader;
-import java.util.Map;
-import java.util.HashMap;
-
-/**
- *
- *
- **/
-public class TestStopFilterFactory extends BaseTokenStreamTestCase {
+public class TestStopFilterFactory extends BaseTokenStreamFactoryTestCase {
public void testInform() throws Exception {
ResourceLoader loader = new ClasspathResourceLoader(getClass());
assertTrue("loader is null and it shouldn't be", loader != null);
- StopFilterFactory factory = new StopFilterFactory();
- Map<String, String> args = new HashMap<String, String>();
- args.put("words", "stop-1.txt");
- args.put("ignoreCase", "true");
- factory.setLuceneMatchVersion(TEST_VERSION_CURRENT);
- factory.init(args);
- factory.inform(loader);
+ StopFilterFactory factory = (StopFilterFactory) tokenFilterFactory("Stop",
+ "words", "stop-1.txt",
+ "ignoreCase", "true");
CharArraySet words = factory.getStopWords();
assertTrue("words is null and it shouldn't be", words != null);
assertTrue("words Size: " + words.size() + " is not: " + 2, words.size() == 2);
assertTrue(factory.isIgnoreCase() + " does not equal: " + true, factory.isIgnoreCase() == true);
- factory = new StopFilterFactory();
- args.put("words", "stop-1.txt, stop-2.txt");
- factory.setLuceneMatchVersion(TEST_VERSION_CURRENT);
- factory.init(args);
- factory.inform(loader);
+ factory = (StopFilterFactory) tokenFilterFactory("Stop",
+ "words", "stop-1.txt, stop-2.txt",
+ "ignoreCase", "true");
words = factory.getStopWords();
assertTrue("words is null and it shouldn't be", words != null);
assertTrue("words Size: " + words.size() + " is not: " + 4, words.size() == 4);
assertTrue(factory.isIgnoreCase() + " does not equal: " + true, factory.isIgnoreCase() == true);
- factory = new StopFilterFactory();
- factory.setLuceneMatchVersion(TEST_VERSION_CURRENT);
- args.put("words", "stop-snowball.txt");
- args.put("format", "snowball");
- factory.init(args);
- factory.inform(loader);
+ factory = (StopFilterFactory) tokenFilterFactory("Stop",
+ "words", "stop-snowball.txt",
+ "format", "snowball",
+ "ignoreCase", "true");
words = factory.getStopWords();
assertEquals(8, words.size());
assertTrue(words.contains("he"));
@@ -73,4 +58,14 @@ public class TestStopFilterFactory exten
assertTrue(words.contains("hers"));
assertTrue(words.contains("herself"));
}
+
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ tokenFilterFactory("Stop", "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestTypeTokenFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestTypeTokenFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestTypeTokenFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestTypeTokenFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -17,88 +17,73 @@ package org.apache.lucene.analysis.core;
* limitations under the License.
*/
-import org.apache.lucene.analysis.BaseTokenStreamTestCase;
import org.apache.lucene.analysis.NumericTokenStream;
-import org.apache.lucene.analysis.util.ClasspathResourceLoader;
-import org.apache.lucene.analysis.util.ResourceLoader;
-import org.junit.Test;
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
+import org.apache.lucene.analysis.util.TokenFilterFactory;
-import java.util.HashMap;
-import java.util.Map;
import java.util.Set;
/**
* Testcase for {@link TypeTokenFilterFactory}
*/
-public class TestTypeTokenFilterFactory extends BaseTokenStreamTestCase {
+public class TestTypeTokenFilterFactory extends BaseTokenStreamFactoryTestCase {
- @Test
public void testInform() throws Exception {
- ResourceLoader loader = new ClasspathResourceLoader(getClass());
- TypeTokenFilterFactory factory = new TypeTokenFilterFactory();
- Map<String, String> args = new HashMap<String, String>();
- args.put("types", "stoptypes-1.txt");
- args.put("enablePositionIncrements", "true");
- factory.setLuceneMatchVersion(TEST_VERSION_CURRENT);
- factory.init(args);
- factory.inform(loader);
+ TypeTokenFilterFactory factory = (TypeTokenFilterFactory) tokenFilterFactory("Type",
+ "types", "stoptypes-1.txt",
+ "enablePositionIncrements", "true");
Set<String> types = factory.getStopTypes();
assertTrue("types is null and it shouldn't be", types != null);
assertTrue("types Size: " + types.size() + " is not: " + 2, types.size() == 2);
assertTrue("enablePositionIncrements was set to true but not correctly parsed", factory.isEnablePositionIncrements());
- factory = new TypeTokenFilterFactory();
- args.put("types", "stoptypes-1.txt, stoptypes-2.txt");
- args.put("enablePositionIncrements", "false");
- args.put("useWhitelist","true");
- factory.init(args);
- factory.inform(loader);
+ factory = (TypeTokenFilterFactory) tokenFilterFactory("Type",
+ "types", "stoptypes-1.txt, stoptypes-2.txt",
+ "enablePositionIncrements", "false",
+ "useWhitelist", "true");
types = factory.getStopTypes();
assertTrue("types is null and it shouldn't be", types != null);
assertTrue("types Size: " + types.size() + " is not: " + 4, types.size() == 4);
assertTrue("enablePositionIncrements was set to false but not correctly parsed", !factory.isEnablePositionIncrements());
}
- @Test
public void testCreationWithBlackList() throws Exception {
- TypeTokenFilterFactory typeTokenFilterFactory = new TypeTokenFilterFactory();
- Map<String, String> args = new HashMap<String, String>();
- args.put("types", "stoptypes-1.txt, stoptypes-2.txt");
- args.put("enablePositionIncrements", "false");
- typeTokenFilterFactory.setLuceneMatchVersion(TEST_VERSION_CURRENT);
- typeTokenFilterFactory.init(args);
+ TokenFilterFactory factory = tokenFilterFactory("Type",
+ "types", "stoptypes-1.txt, stoptypes-2.txt",
+ "enablePositionIncrements", "false");
NumericTokenStream input = new NumericTokenStream();
input.setIntValue(123);
- typeTokenFilterFactory.create(input);
+ factory.create(input);
}
- @Test
- public void testCreationWithWhiteList() throws Exception {
- TypeTokenFilterFactory typeTokenFilterFactory = new TypeTokenFilterFactory();
- Map<String, String> args = new HashMap<String, String>();
- args.put("types", "stoptypes-1.txt, stoptypes-2.txt");
- args.put("enablePositionIncrements", "false");
- args.put("useWhitelist","true");
- typeTokenFilterFactory.setLuceneMatchVersion(TEST_VERSION_CURRENT);
- typeTokenFilterFactory.init(args);
- NumericTokenStream input = new NumericTokenStream();
- input.setIntValue(123);
- typeTokenFilterFactory.create(input);
- }
+ public void testCreationWithWhiteList() throws Exception {
+ TokenFilterFactory factory = tokenFilterFactory("Type",
+ "types", "stoptypes-1.txt, stoptypes-2.txt",
+ "enablePositionIncrements", "false",
+ "useWhitelist", "true");
+ NumericTokenStream input = new NumericTokenStream();
+ input.setIntValue(123);
+ factory.create(input);
+ }
- @Test
public void testMissingTypesParameter() throws Exception {
try {
- TypeTokenFilterFactory typeTokenFilterFactory = new TypeTokenFilterFactory();
- Map<String, String> args = new HashMap<String, String>();
- args.put("enablePositionIncrements", "false");
- typeTokenFilterFactory.setLuceneMatchVersion(TEST_VERSION_CURRENT);
- typeTokenFilterFactory.init(args);
- typeTokenFilterFactory.inform(new ClasspathResourceLoader(getClass()));
+ tokenFilterFactory("Type", "enablePositionIncrements", "false");
fail("not supplying 'types' parameter should cause an IllegalArgumentException");
} catch (IllegalArgumentException e) {
// everything ok
}
}
-
+
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ tokenFilterFactory("Type",
+ "types", "stoptypes-1.txt",
+ "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/cz/TestCzechStemFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/cz/TestCzechStemFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/cz/TestCzechStemFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/cz/TestCzechStemFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -20,23 +20,31 @@ package org.apache.lucene.analysis.cz;
import java.io.Reader;
import java.io.StringReader;
-import org.apache.lucene.analysis.BaseTokenStreamTestCase;
import org.apache.lucene.analysis.MockTokenizer;
import org.apache.lucene.analysis.TokenStream;
-import org.apache.lucene.analysis.Tokenizer;
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
/**
* Simple tests to ensure the Czech stem filter factory is working.
*/
-public class TestCzechStemFilterFactory extends BaseTokenStreamTestCase {
+public class TestCzechStemFilterFactory extends BaseTokenStreamFactoryTestCase {
/**
* Ensure the filter actually stems text.
*/
public void testStemming() throws Exception {
Reader reader = new StringReader("angliÄtÃ");
- Tokenizer tokenizer = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
- CzechStemFilterFactory factory = new CzechStemFilterFactory();
- TokenStream stream = factory.create(tokenizer);
+ TokenStream stream = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
+ stream = tokenFilterFactory("CzechStem").create(stream);
assertTokenStreamContents(stream, new String[] { "anglick" });
}
+
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ tokenFilterFactory("CzechStem", "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/de/TestGermanLightStemFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/de/TestGermanLightStemFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/de/TestGermanLightStemFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/de/TestGermanLightStemFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -20,18 +20,28 @@ package org.apache.lucene.analysis.de;
import java.io.Reader;
import java.io.StringReader;
-import org.apache.lucene.analysis.BaseTokenStreamTestCase;
import org.apache.lucene.analysis.MockTokenizer;
import org.apache.lucene.analysis.TokenStream;
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
/**
* Simple tests to ensure the German light stem factory is working.
*/
-public class TestGermanLightStemFilterFactory extends BaseTokenStreamTestCase {
+public class TestGermanLightStemFilterFactory extends BaseTokenStreamFactoryTestCase {
public void testStemming() throws Exception {
Reader reader = new StringReader("häuser");
- GermanLightStemFilterFactory factory = new GermanLightStemFilterFactory();
- TokenStream stream = factory.create(new MockTokenizer(reader, MockTokenizer.WHITESPACE, false));
+ TokenStream stream = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
+ stream = tokenFilterFactory("GermanLightStem").create(stream);
assertTokenStreamContents(stream, new String[] { "haus" });
}
+
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ tokenFilterFactory("GermanLightStem", "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/de/TestGermanMinimalStemFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/de/TestGermanMinimalStemFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/de/TestGermanMinimalStemFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/de/TestGermanMinimalStemFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -20,18 +20,28 @@ package org.apache.lucene.analysis.de;
import java.io.Reader;
import java.io.StringReader;
-import org.apache.lucene.analysis.BaseTokenStreamTestCase;
import org.apache.lucene.analysis.MockTokenizer;
import org.apache.lucene.analysis.TokenStream;
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
/**
* Simple tests to ensure the German minimal stem factory is working.
*/
-public class TestGermanMinimalStemFilterFactory extends BaseTokenStreamTestCase {
+public class TestGermanMinimalStemFilterFactory extends BaseTokenStreamFactoryTestCase {
public void testStemming() throws Exception {
Reader reader = new StringReader("bilder");
- GermanMinimalStemFilterFactory factory = new GermanMinimalStemFilterFactory();
- TokenStream stream = factory.create(new MockTokenizer(reader, MockTokenizer.WHITESPACE, false));
+ TokenStream stream = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
+ stream = tokenFilterFactory("GermanMinimalStem").create(stream);
assertTokenStreamContents(stream, new String[] { "bild" });
}
+
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ tokenFilterFactory("GermanMinimalStem", "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/de/TestGermanNormalizationFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/de/TestGermanNormalizationFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/de/TestGermanNormalizationFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/de/TestGermanNormalizationFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -20,18 +20,28 @@ package org.apache.lucene.analysis.de;
import java.io.Reader;
import java.io.StringReader;
-import org.apache.lucene.analysis.BaseTokenStreamTestCase;
import org.apache.lucene.analysis.MockTokenizer;
import org.apache.lucene.analysis.TokenStream;
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
/**
* Simple tests to ensure the German normalization factory is working.
*/
-public class TestGermanNormalizationFilterFactory extends BaseTokenStreamTestCase {
+public class TestGermanNormalizationFilterFactory extends BaseTokenStreamFactoryTestCase {
public void testStemming() throws Exception {
Reader reader = new StringReader("weiÃbier");
- GermanNormalizationFilterFactory factory = new GermanNormalizationFilterFactory();
- TokenStream stream = factory.create(new MockTokenizer(reader, MockTokenizer.WHITESPACE, false));
+ TokenStream stream = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
+ stream = tokenFilterFactory("GermanNormalization").create(stream);
assertTokenStreamContents(stream, new String[] { "weissbier" });
}
+
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ tokenFilterFactory("GermanNormalization", "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/de/TestGermanStemFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/de/TestGermanStemFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/de/TestGermanStemFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/de/TestGermanStemFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -20,23 +20,31 @@ package org.apache.lucene.analysis.de;
import java.io.Reader;
import java.io.StringReader;
-import org.apache.lucene.analysis.BaseTokenStreamTestCase;
import org.apache.lucene.analysis.MockTokenizer;
import org.apache.lucene.analysis.TokenStream;
-import org.apache.lucene.analysis.Tokenizer;
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
/**
* Simple tests to ensure the German stem filter factory is working.
*/
-public class TestGermanStemFilterFactory extends BaseTokenStreamTestCase {
+public class TestGermanStemFilterFactory extends BaseTokenStreamFactoryTestCase {
/**
* Ensure the filter actually stems text.
*/
public void testStemming() throws Exception {
Reader reader = new StringReader("Tischen");
- Tokenizer tokenizer = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
- GermanStemFilterFactory factory = new GermanStemFilterFactory();
- TokenStream stream = factory.create(tokenizer);
+ TokenStream stream = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
+ stream = tokenFilterFactory("GermanStem").create(stream);
assertTokenStreamContents(stream, new String[] { "tisch" });
}
+
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ tokenFilterFactory("GermanStem", "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/el/TestGreekLowerCaseFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/el/TestGreekLowerCaseFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/el/TestGreekLowerCaseFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/el/TestGreekLowerCaseFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -19,29 +19,32 @@ package org.apache.lucene.analysis.el;
import java.io.Reader;
import java.io.StringReader;
-import java.util.Collections;
-import java.util.Map;
-import org.apache.lucene.analysis.BaseTokenStreamTestCase;
import org.apache.lucene.analysis.MockTokenizer;
import org.apache.lucene.analysis.TokenStream;
-import org.apache.lucene.analysis.Tokenizer;
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
/**
* Simple tests to ensure the Greek lowercase filter factory is working.
*/
-public class TestGreekLowerCaseFilterFactory extends BaseTokenStreamTestCase {
+public class TestGreekLowerCaseFilterFactory extends BaseTokenStreamFactoryTestCase {
/**
* Ensure the filter actually lowercases (and a bit more) greek text.
*/
public void testNormalization() throws Exception {
Reader reader = new StringReader("ÎάÏÎ¿Ï ÎÎΪÎΣ");
- Tokenizer tokenizer = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
- GreekLowerCaseFilterFactory factory = new GreekLowerCaseFilterFactory();
- factory.setLuceneMatchVersion(TEST_VERSION_CURRENT);
- Map<String, String> args = Collections.emptyMap();
- factory.init(args);
- TokenStream stream = factory.create(tokenizer);
+ TokenStream stream = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
+ stream = tokenFilterFactory("GreekLowerCase").create(stream);
assertTokenStreamContents(stream, new String[] { "μαιοÏ", "μαιοÏ" });
}
+
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ tokenFilterFactory("GreekLowerCase", "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/el/TestGreekStemFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/el/TestGreekStemFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/el/TestGreekStemFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/el/TestGreekStemFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -20,22 +20,29 @@ package org.apache.lucene.analysis.el;
import java.io.Reader;
import java.io.StringReader;
-import org.apache.lucene.analysis.BaseTokenStreamTestCase;
import org.apache.lucene.analysis.MockTokenizer;
import org.apache.lucene.analysis.TokenStream;
-import org.apache.lucene.analysis.Tokenizer;
-import org.apache.lucene.analysis.el.GreekLowerCaseFilter;
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
/**
* Simple tests to ensure the Greek stem filter factory is working.
*/
-public class TestGreekStemFilterFactory extends BaseTokenStreamTestCase {
+public class TestGreekStemFilterFactory extends BaseTokenStreamFactoryTestCase {
public void testStemming() throws Exception {
Reader reader = new StringReader("άνθÏÏÏοÏ");
- Tokenizer tokenizer = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
- TokenStream normalized = new GreekLowerCaseFilter(TEST_VERSION_CURRENT, tokenizer);
- GreekStemFilterFactory factory = new GreekStemFilterFactory();
- TokenStream stream = factory.create(normalized);
+ TokenStream stream = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
+ stream = tokenFilterFactory("GreekLowerCase").create(stream);
+ stream = tokenFilterFactory("GreekStem").create(stream);
assertTokenStreamContents(stream, new String[] { "ανθÏÏÏ" });
}
+
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ tokenFilterFactory("GreekStem", "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/en/TestEnglishMinimalStemFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/en/TestEnglishMinimalStemFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/en/TestEnglishMinimalStemFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/en/TestEnglishMinimalStemFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -20,18 +20,28 @@ package org.apache.lucene.analysis.en;
import java.io.Reader;
import java.io.StringReader;
-import org.apache.lucene.analysis.BaseTokenStreamTestCase;
import org.apache.lucene.analysis.MockTokenizer;
import org.apache.lucene.analysis.TokenStream;
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
/**
* Simple tests to ensure the English minimal stem factory is working.
*/
-public class TestEnglishMinimalStemFilterFactory extends BaseTokenStreamTestCase {
+public class TestEnglishMinimalStemFilterFactory extends BaseTokenStreamFactoryTestCase {
public void testStemming() throws Exception {
Reader reader = new StringReader("bricks");
- EnglishMinimalStemFilterFactory factory = new EnglishMinimalStemFilterFactory();
- TokenStream stream = factory.create(new MockTokenizer(reader, MockTokenizer.WHITESPACE, false));
+ TokenStream stream = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
+ stream = tokenFilterFactory("EnglishMinimalStem").create(stream);
assertTokenStreamContents(stream, new String[] { "brick" });
}
+
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ tokenFilterFactory("EnglishMinimalStem", "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/en/TestKStemFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/en/TestKStemFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/en/TestKStemFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/en/TestKStemFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -20,18 +20,28 @@ package org.apache.lucene.analysis.en;
import java.io.Reader;
import java.io.StringReader;
-import org.apache.lucene.analysis.BaseTokenStreamTestCase;
import org.apache.lucene.analysis.MockTokenizer;
import org.apache.lucene.analysis.TokenStream;
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
/**
* Simple tests to ensure the kstem filter factory is working.
*/
-public class TestKStemFilterFactory extends BaseTokenStreamTestCase {
+public class TestKStemFilterFactory extends BaseTokenStreamFactoryTestCase {
public void testStemming() throws Exception {
Reader reader = new StringReader("bricks");
- KStemFilterFactory factory = new KStemFilterFactory();
- TokenStream stream = factory.create(new MockTokenizer(reader, MockTokenizer.WHITESPACE, false));
+ TokenStream stream = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
+ stream = tokenFilterFactory("KStem").create(stream);
assertTokenStreamContents(stream, new String[] { "brick" });
}
+
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ tokenFilterFactory("KStem", "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/en/TestPorterStemFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/en/TestPorterStemFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/en/TestPorterStemFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/en/TestPorterStemFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -20,23 +20,31 @@ package org.apache.lucene.analysis.en;
import java.io.Reader;
import java.io.StringReader;
-import org.apache.lucene.analysis.BaseTokenStreamTestCase;
import org.apache.lucene.analysis.MockTokenizer;
import org.apache.lucene.analysis.TokenStream;
-import org.apache.lucene.analysis.Tokenizer;
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
/**
* Simple tests to ensure the Porter stem filter factory is working.
*/
-public class TestPorterStemFilterFactory extends BaseTokenStreamTestCase {
+public class TestPorterStemFilterFactory extends BaseTokenStreamFactoryTestCase {
/**
* Ensure the filter actually stems text.
*/
public void testStemming() throws Exception {
Reader reader = new StringReader("dogs");
- Tokenizer tokenizer = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
- PorterStemFilterFactory factory = new PorterStemFilterFactory();
- TokenStream stream = factory.create(tokenizer);
+ TokenStream stream = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
+ stream = tokenFilterFactory("PorterStem").create(stream);
assertTokenStreamContents(stream, new String[] { "dog" });
}
+
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ tokenFilterFactory("PorterStem", "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/es/TestSpanishLightStemFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/es/TestSpanishLightStemFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/es/TestSpanishLightStemFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/es/TestSpanishLightStemFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -20,18 +20,28 @@ package org.apache.lucene.analysis.es;
import java.io.Reader;
import java.io.StringReader;
-import org.apache.lucene.analysis.BaseTokenStreamTestCase;
import org.apache.lucene.analysis.MockTokenizer;
import org.apache.lucene.analysis.TokenStream;
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
/**
* Simple tests to ensure the Spanish Light stem factory is working.
*/
-public class TestSpanishLightStemFilterFactory extends BaseTokenStreamTestCase {
+public class TestSpanishLightStemFilterFactory extends BaseTokenStreamFactoryTestCase {
public void testStemming() throws Exception {
Reader reader = new StringReader("sociedades");
- SpanishLightStemFilterFactory factory = new SpanishLightStemFilterFactory();
- TokenStream stream = factory.create(new MockTokenizer(reader, MockTokenizer.WHITESPACE, false));
+ TokenStream stream = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
+ stream = tokenFilterFactory("SpanishLightStem").create(stream);
assertTokenStreamContents(stream, new String[] { "sociedad" });
}
+
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ tokenFilterFactory("SpanishLightStem", "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/fa/TestPersianNormalizationFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/fa/TestPersianNormalizationFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/fa/TestPersianNormalizationFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/fa/TestPersianNormalizationFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -20,23 +20,31 @@ package org.apache.lucene.analysis.fa;
import java.io.Reader;
import java.io.StringReader;
-import org.apache.lucene.analysis.BaseTokenStreamTestCase;
import org.apache.lucene.analysis.MockTokenizer;
import org.apache.lucene.analysis.TokenStream;
-import org.apache.lucene.analysis.Tokenizer;
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
/**
* Simple tests to ensure the Persian normalization factory is working.
*/
-public class TestPersianNormalizationFilterFactory extends BaseTokenStreamTestCase {
+public class TestPersianNormalizationFilterFactory extends BaseTokenStreamFactoryTestCase {
/**
* Ensure the filter actually normalizes persian text.
*/
public void testNormalization() throws Exception {
Reader reader = new StringReader("ÙاÛ");
- Tokenizer tokenizer = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
- PersianNormalizationFilterFactory factory = new PersianNormalizationFilterFactory();
- TokenStream stream = factory.create(tokenizer);
+ TokenStream stream = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
+ stream = tokenFilterFactory("PersianNormalization").create(stream);
assertTokenStreamContents(stream, new String[] { "ÙاÙ" });
}
+
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ tokenFilterFactory("PersianNormalization", "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/fi/TestFinnishLightStemFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/fi/TestFinnishLightStemFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/fi/TestFinnishLightStemFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/fi/TestFinnishLightStemFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -20,18 +20,28 @@ package org.apache.lucene.analysis.fi;
import java.io.Reader;
import java.io.StringReader;
-import org.apache.lucene.analysis.BaseTokenStreamTestCase;
import org.apache.lucene.analysis.MockTokenizer;
import org.apache.lucene.analysis.TokenStream;
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
/**
* Simple tests to ensure the Finnish light stem factory is working.
*/
-public class TestFinnishLightStemFilterFactory extends BaseTokenStreamTestCase {
+public class TestFinnishLightStemFilterFactory extends BaseTokenStreamFactoryTestCase {
public void testStemming() throws Exception {
Reader reader = new StringReader("aseistettujen");
- FinnishLightStemFilterFactory factory = new FinnishLightStemFilterFactory();
- TokenStream stream = factory.create(new MockTokenizer(reader, MockTokenizer.WHITESPACE, false));
+ TokenStream stream = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
+ stream = tokenFilterFactory("FinnishLightStem").create(stream);
assertTokenStreamContents(stream, new String[] { "aseistet" });
}
+
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ tokenFilterFactory("FinnishLightStem", "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}
Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/fr/TestFrenchLightStemFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/fr/TestFrenchLightStemFilterFactory.java?rev=1463191&r1=1463190&r2=1463191&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/fr/TestFrenchLightStemFilterFactory.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/fr/TestFrenchLightStemFilterFactory.java Mon Apr 1 16:30:00 2013
@@ -20,18 +20,28 @@ package org.apache.lucene.analysis.fr;
import java.io.Reader;
import java.io.StringReader;
-import org.apache.lucene.analysis.BaseTokenStreamTestCase;
import org.apache.lucene.analysis.MockTokenizer;
import org.apache.lucene.analysis.TokenStream;
+import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
/**
* Simple tests to ensure the French light stem factory is working.
*/
-public class TestFrenchLightStemFilterFactory extends BaseTokenStreamTestCase {
+public class TestFrenchLightStemFilterFactory extends BaseTokenStreamFactoryTestCase {
public void testStemming() throws Exception {
Reader reader = new StringReader("administrativement");
- FrenchLightStemFilterFactory factory = new FrenchLightStemFilterFactory();
- TokenStream stream = factory.create(new MockTokenizer(reader, MockTokenizer.WHITESPACE, false));
+ TokenStream stream = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
+ stream = tokenFilterFactory("FrenchLightStem").create(stream);
assertTokenStreamContents(stream, new String[] { "administratif" });
}
+
+ /** Test that bogus arguments result in exception */
+ public void testBogusArguments() throws Exception {
+ try {
+ tokenFilterFactory("FrenchLightStem", "bogusArg", "bogusValue");
+ fail();
+ } catch (IllegalArgumentException expected) {
+ assertTrue(expected.getMessage().contains("Unknown parameters"));
+ }
+ }
}