package lemming.test.lemma.edit; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; import java.util.LinkedList; import java.util.List; import lemming.lemma.LemmaCandidateSet; import lemming.lemma.LemmaInstance; import lemming.lemma.edit.EditTreeGenerator; import lemming.lemma.edit.EditTreeGeneratorTrainer; import lemming.lemma.edit.EditTreeGeneratorTrainer.EditTreeGeneratorTrainerOptions; import org.junit.Test; public class EditTreeGeneratorTest { @Test public void test() { EditTreeGeneratorTrainer trainer = new EditTreeGeneratorTrainer(); trainer.getOptions().setOption(EditTreeGeneratorTrainerOptions.TAG_DEPENDENT, true); trainer.getOptions().setOption(EditTreeGeneratorTrainerOptions.MIN_COUNT, 0); trainer.getOptions().setOption(EditTreeGeneratorTrainerOptions.NUM_STEPS, 1); List<LemmaInstance> instances = new LinkedList<>(); instances.add(new LemmaInstance("abc", "ab", null, "C")); instances.add(new LemmaInstance("dec", "de", null, "C")); instances.add(new LemmaInstance("ccc", "cc", null, "C")); instances.add(new LemmaInstance("abc", "abc", null, "B")); instances.add(new LemmaInstance("dec", "dec", null, "B")); instances.add(new LemmaInstance("dec", "decc", null, null)); EditTreeGenerator gen = (EditTreeGenerator) trainer.train(instances, null); LemmaCandidateSet set = null; set = new LemmaCandidateSet(); gen.addCandidates(new LemmaInstance("fgc", null, null, "C"), set); assertEquals(1, set.size()); assertTrue(set.contains("fg")); set = new LemmaCandidateSet(); gen.addCandidates(new LemmaInstance("fgc", null, null, "B"), set); assertEquals(1, set.size()); assertTrue(set.contains("fgc")); set = new LemmaCandidateSet(); gen.addCandidates(new LemmaInstance("fgc", null, null, null), set); assertEquals(3, set.size()); assertTrue(set.contains("fgc")); assertTrue(set.contains("fg")); assertTrue(set.contains("fgcc")); } }