@Test
public void accept() {

  Boolean isVisited = tableScan.accept(new PhysicalPlanNodeVisitor<Boolean, Object>() {
    @Override
    protected Boolean visitNode(PhysicalPlan node, Object context) {
      return (node instanceof TableScanOperator);
    }
    @Override
    public Boolean visitTableScan(TableScanOperator node, Object context) {
      return super.visitTableScan(node, context);
    }
  }, null);
  assertTrue(isVisited);
}