public RowExpression extract(PlanNode node)
    {
        return node.accept(new Visitor(domainTranslator, functionAndTypeManager), null);
    }
@Test
    public void testProject()
    {
        PlanNode node = new ProjectNode(newId(),
                filter(baseTableScan,
                        and(
                                equals(AV, BV),
                                equals(BV, CV),
                                lessThan(CV, bigintLiteral(10)))),
                assignment(DV, AV, EV, CV));

        RowExpression effectivePredicate = effectivePredicateExtractor.extract(node);

        // Rewrite in terms of project output symbols
        assertEquals(normalizeConjuncts(effectivePredicate),
                normalizeConjuncts(
                        lessThan(DV, bigintLiteral(10)),
                        equals(DV, EV)));
    }