function testSimpleTree() {
  var e = schema.getEmployee();

  var treeBefore =
      'select(combined_pred_and)\n' +
      '-table_access(Employee)\n';

  var treeAfter =
      'select(value_pred(Employee.id gt 100))\n' +
      '-select(value_pred(Employee.salary lt 100))\n' +
      '--table_access(Employee)\n';

  // Generating a simple tree that has just one SelectNode corresponding to an
  // AND predicate.
  var leftPredicate = e.id.gt('100');
  var rightPredicate = e.salary.lt(100);
  var rootNodeBefore = new lf.proc.SelectNode(
      lf.op.and(leftPredicate, rightPredicate));
  var tableAccessNode = new lf.proc.TableAccessNode(schema.getEmployee());
  rootNodeBefore.addChild(tableAccessNode);
  assertEquals(treeBefore, lf.tree.toString(rootNodeBefore));

  var pass = new lf.proc.AndPredicatePass();
  var rootNodeAfter = pass.rewrite(rootNodeBefore);
  assertEquals(treeAfter, lf.tree.toString(rootNodeAfter));
}
Tests a simple tree, where only one AND predicate exists.