Assert.assertEquals(MultiSentence.class, sen.getClass());
}
@Test
public void testComplexSentenceParse() {
BinarySentence sen = (BinarySentence) parser
.parse("((OR NORVIG AIMA LISP) AND TRUE)");
Assert.assertEquals(BinarySentence.class, sen.getClass());
sen = (BinarySentence) parser
.parse("((OR NORVIG AIMA LISP) AND (((LISP => COOL))))");
Assert.assertEquals(BinarySentence.class, sen.getClass());
Assert.assertEquals(
" ( ( OR NORVIG AIMA LISP ) AND ( LISP => COOL ) )",
sen.toString());
String s = "((NOT (P AND Q )) AND ((NOT (R AND S))))";
sen = (BinarySentence) parser.parse(s);
Assert.assertEquals(
" ( ( NOT ( P AND Q ) ) AND ( NOT ( R AND S ) ) )",
sen.toString());
s = "((P AND Q) OR (S AND T))";
sen = (BinarySentence) parser.parse(s);
Assert.assertEquals(" ( ( P AND Q ) OR ( S AND T ) )", sen.toString());
Assert.assertEquals("OR", sen.getOperator());
s = "(NOT ((P AND Q) => (S AND T)))";
UnarySentence nsen = (UnarySentence) parser.parse(s);
// assertEquals("=>",sen.getOperator());
s = "(NOT (P <=> (S AND T)))";