### Question:
Stemmer implements Function<String, String> { public Stemmer(final Language language) { Validate.notNull(language, "language must not be null"); stemmer = createStemmer(language); } Stemmer(final Language language); @Override String apply(String input); String stem(String word); @Override String toString();  }### Answer:
@Test public void testStemmer() { Stemmer stemmer = new Stemmer(Language.ENGLISH); assertEquals("walk", stemmer.stem("walk")); assertEquals("walk", stemmer.stem("walked")); assertEquals("walk", stemmer.stem("walking")); }