Pinq\Tests\Integration\Queries\Functions\ElementProjectionTest::testExcessiveParametersWithDefault PHP Метод

testExcessiveParametersWithDefault() публичный Метод

    public function testExcessiveParametersWithDefault()
    {
        /** @var $function Functions\ElementProjection */
        $function = $this->buildFunction('', null, null, [], [O\Expression::parameter('value'), O\Expression::parameter('key'), O\Expression::parameter('excessive1', null, O\Expression::value([true])), O\Expression::parameter('excessive2', null, O\Expression::value([false]))]);
        $this->assertSame(false, $function->getParameters()->hasRequiredUnusedParameters());
        $this->assertEquals([], $function->getParameters()->getRequiredUnusedParameters());
        $this->assertEquals([O\Expression::parameter('excessive1', null, O\Expression::value([true])), O\Expression::parameter('excessive2', null, O\Expression::value([false]))], $function->getParameters()->getUnused());
        $this->assertEquals(['excessive1' => O\Expression::value([true]), 'excessive2' => O\Expression::value([false])], $function->getParameters()->getUnusedParameterDefaultMap());
        $this->assertEquals(['excessive1' => [true], 'excessive2' => [false]], $function->getEvaluationContextFactory()->getEvaluationContext()->getVariableTable());
    }