FPLParser parser = new FPLParser(string, null, new StubIType());
Operation op = parser.operation();
Assert.assertTrue("Parsed predicate should be a ConstructorOp, but is " + op.getClass().getCanonicalName(), op instanceof ConstructorOp);
ConstructorOp construct = (ConstructorOp)op;
FreeVars vars = construct.getFreeVariables();
Assert.assertEquals("Wrong number of free vars", 3, vars.size());
Assert.assertEquals("Wrong type", "Foo", vars.getType(Constraint.RESULT));
Assert.assertEquals("Wrong type", "Bar", vars.getType(new SpecVar("bar")));
Assert.assertEquals("Wrong type", "Baz", vars.getType(new SpecVar("baz")));
}