package edu.stanford.nlp.trees.international.negra; import junit.framework.TestCase; import edu.stanford.nlp.trees.Tree; /** @author Christopher Manning */ public class NegraPennLanguagePackTest extends TestCase { public void testBasicCategory() { NegraPennLanguagePack lp1 = new NegraPennLanguagePack(false); // leave(some)GF=false NegraPennLanguagePack lp2 = new NegraPennLanguagePack(true); // leave(some)GF = true NegraPennTreeReaderFactory trf01 = new NegraPennTreeReaderFactory(0, false, false, lp1); // do nothing NegraPennTreeReaderFactory trf02 = new NegraPennTreeReaderFactory(0, false, false, lp2); NegraPennTreeReaderFactory trf11 = new NegraPennTreeReaderFactory(1, false, false, lp1); // category and function NegraPennTreeReaderFactory trf12 = new NegraPennTreeReaderFactory(1, false, false, lp2); NegraPennTreeReaderFactory trf21 = new NegraPennTreeReaderFactory(2, false, false, lp1); // just category NegraPennTreeReaderFactory trf22 = new NegraPennTreeReaderFactory(2, false, false, lp2); String tree = "( (S (NE-SB Kronos) (VAFIN-HD haben) (VP-OC (PP-MO (APPR-AC mit) (PPOSAT-NK ihrer) (NN-NK Musik)) (NN-OA Brücken) (VVPP-HD geschlagen))) ($. .))"; String ans1 = "(ROOT (S (NE-SB Kronos) (VAFIN-HD haben) (VP-OC (PP-MO (APPR-AC mit) (PPOSAT-NK ihrer) (NN-NK Musik)) (NN-OA Brücken) (VVPP-HD geschlagen)) ($. .)))"; String ans21 = "(ROOT (S (NE Kronos) (VAFIN haben) (VP (PP (APPR mit) (PPOSAT ihrer) (NN Musik)) (NN Brücken) (VVPP geschlagen)) ($. .)))"; String ans22 = "(ROOT (S (NE-SB Kronos) (VAFIN haben) (VP (PP (APPR mit) (PPOSAT ihrer) (NN Musik)) (NN-OA Brücken) (VVPP geschlagen)) ($. .)))"; Tree t01 = Tree.valueOf(tree, trf01); Tree t02 = Tree.valueOf(tree, trf02); Tree t11 = Tree.valueOf(tree, trf11); Tree t12 = Tree.valueOf(tree, trf12); Tree t21 = Tree.valueOf(tree, trf21); Tree t22 = Tree.valueOf(tree, trf22); assertEquals("T01", ans1, t01.toString()); assertEquals("T02", ans1, t02.toString()); assertEquals("T11", ans1, t11.toString()); assertEquals("T12", ans1, t12.toString()); assertEquals("T21", ans21, t21.toString()); assertEquals("T22", ans22, t22.toString()); String ans = lp1.basicCategory("---CJ"); assertEquals("BC1", "-", ans); } }