public Rule<ProjectNode> projectNodeRule()
    {
        return new PullUpExpressionInLambdaProjectNodeRule();
    }
@Test
    public void testInvalidNestedLambdaInProjection()
    {
        tester().assertThat(new PullUpExpressionInLambdaRules(getFunctionManager()).projectNodeRule())
                .setSystemProperty(PULL_EXPRESSION_FROM_LAMBDA_ENABLED, "true")
                .on(p ->
                {
                    p.variable("expr", new ArrayType(new ArrayType(BIGINT)));
                    p.variable("arr1", new ArrayType(BIGINT));
                    p.variable("arr2", new ArrayType(BIGINT));
                    return p.project(
                            Assignments.builder().put(p.variable("expr", new ArrayType(new ArrayType(BIGINT))), p.rowExpression("transform(arr1, x->transform(arr2, y->slice(arr2, 1, x)))")).build(),
                            p.values(p.variable("arr1", new ArrayType(BIGINT)), p.variable("arr2", new ArrayType(BIGINT))));
                }).doesNotFire();
    }