Neos\Flow\Tests\Unit\Aop\Pointcut\PointcutFilterCompositeTest::buildMethodArgumentsEvaluationConditionCodeBuildsTheCorrectCodeForAConditionWithObjectAccess PHP Метод

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

    public function buildMethodArgumentsEvaluationConditionCodeBuildsTheCorrectCodeForAConditionWithObjectAccess()
    {
        $condition = ['identifier' => ['operator' => [0 => '==', 1 => '!='], 'value' => [0 => 'this.bar.baz', 1 => 'current.party.bar.baz']], 'some.object.property' => ['operator' => [0 => '!='], 'value' => [0 => 'this.object.with.another.property']]];
        $pointcutFilterComposite = $this->getAccessibleMock(Pointcut\PointcutFilterComposite::class, ['dummy'], [], '', false);
        $result = $pointcutFilterComposite->_call('buildMethodArgumentsEvaluationConditionCode', $condition);
        $expectedResult = '($joinPoint->getMethodArgument(\'identifier\') == \\Neos\\Utility\\ObjectAccess::getPropertyPath($currentObject, \'bar.baz\') && $joinPoint->getMethodArgument(\'identifier\') != \\Neos\\Utility\\ObjectAccess::getPropertyPath($globalObjects[\'party\'], \'bar.baz\') && \\Neos\\Utility\\ObjectAccess::getPropertyPath($joinPoint->getMethodArgument(\'some\'), \'object.property\') != \\Neos\\Utility\\ObjectAccess::getPropertyPath($currentObject, \'object.with.another.property\'))';
        $this->assertEquals($expectedResult, $result, 'The wrong Code has been built.');
    }