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

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

    public function buildGlobalRuntimeEvaluationsConditionCodeBuildsTheCorrectCodeForAConditionWithMatchesOperator()
    {
        $condition = [0 => ['operator' => 'matches', 'leftValue' => 'this.some.thing', 'rightValue' => ['"foo"', 'current.party.name', 5]], 1 => ['operator' => 'matches', 'leftValue' => 'this.some.thing', 'rightValue' => 'current.party.accounts']];
        $pointcutFilterComposite = $this->getAccessibleMock(Pointcut\PointcutFilterComposite::class, ['dummy'], [], '', false);
        $result = $pointcutFilterComposite->_call('buildGlobalRuntimeEvaluationsConditionCode', $condition);
        $expectedResult = '((!empty(array_intersect(\\Neos\\Utility\\ObjectAccess::getPropertyPath($currentObject, \'some.thing\'), array("foo", \\Neos\\Utility\\ObjectAccess::getPropertyPath($globalObjects[\'party\'], \'name\'), 5)))) && (!empty(array_intersect(\\Neos\\Utility\\ObjectAccess::getPropertyPath($currentObject, \'some.thing\'), \\Neos\\Utility\\ObjectAccess::getPropertyPath($globalObjects[\'party\'], \'accounts\')))))';
        $this->assertEquals($expectedResult, $result, 'The wrong Code has been built.');
    }