public void TestMaxCodeLength() { IDictionary <String, String> args = new Dictionary <String, String>(); args.Put(PhoneticFilterFactory.ENCODER, "Metaphone"); args.Put(PhoneticFilterFactory.MAX_CODE_LENGTH, "2"); PhoneticFilterFactory factory = new PhoneticFilterFactory(args); factory.Inform(new ClasspathResourceLoader(factory.GetType())); assertEquals(2, ((Metaphone)factory.GetEncoder()).MaxCodeLen); }
public void TestInjectFalse() { IDictionary <String, String> args = new Dictionary <String, String>(); args.Put(PhoneticFilterFactory.ENCODER, "Metaphone"); args.Put(PhoneticFilterFactory.INJECT, "false"); PhoneticFilterFactory factory = new PhoneticFilterFactory(args); factory.Inform(new ClasspathResourceLoader(factory.GetType())); assertFalse(factory.inject); }
public void TestFactoryDefaults() { IDictionary <String, String> args = new Dictionary <String, String>(); args.Put(PhoneticFilterFactory.ENCODER, "Metaphone"); PhoneticFilterFactory factory = new PhoneticFilterFactory(args); factory.Inform(new ClasspathResourceLoader(factory.GetType())); assertTrue(factory.GetEncoder() is Metaphone); assertTrue(factory.inject); // default }
public void TestUnknownEncoder() { try { IDictionary <String, String> args = new Dictionary <String, String>(); args.Put("encoder", "XXX"); PhoneticFilterFactory factory = new PhoneticFilterFactory(args); factory.Inform(new ClasspathResourceLoader(factory.GetType())); fail(); } catch (Exception expected) when(expected.IsIllegalArgumentException()) { assertTrue(expected.Message.Contains("Error loading encoder")); } }
internal static void assertAlgorithm(String algName, String inject, String input, String[] expected) { Tokenizer tokenizer = new MockTokenizer(new StringReader(input), MockTokenizer.WHITESPACE, false); IDictionary <String, String> args = new Dictionary <String, String>(); args.Put("encoder", algName); args.Put("inject", inject); PhoneticFilterFactory factory = new PhoneticFilterFactory(args); factory.Inform(new ClasspathResourceLoader(factory.GetType())); TokenStream stream = factory.Create(tokenizer); AssertTokenStreamContents(stream, expected); }
public void TestUnknownEncoderReflection() { try { IDictionary <String, String> args = new Dictionary <String, String>(); args.Put("encoder", "org.apache.commons.codec.language.NonExistence"); PhoneticFilterFactory factory = new PhoneticFilterFactory(args); factory.Inform(new ClasspathResourceLoader(factory.GetType())); fail(); } catch (ArgumentException expected) { assertTrue(expected.Message.Contains("Error loading encoder")); } }