Neos\Flow\Tests\Unit\Aop\Pointcut\PointcutExpressionParserTest::getArgumentConstraintsFromMethodArgumentsPatternWorks PHP Метод

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

    public function getArgumentConstraintsFromMethodArgumentsPatternWorks()
    {
        $methodArgumentsPattern = 'arg1 == "blub,ber",   arg2 != FALSE  ,arg3 in   (TRUE, some.object.access, "fa,sel", \'blub\'), arg4 contains FALSE,arg2==TRUE,arg5 matches (1,2,3), arg6 matches current.party.accounts';
        $expectedConditions = ['arg1' => ['operator' => ['=='], 'value' => ['"blub,ber"']], 'arg2' => ['operator' => ['!=', '=='], 'value' => ['FALSE', 'TRUE']], 'arg3' => ['operator' => ['in'], 'value' => [['TRUE', 'some.object.access', '"fa,sel"', '\'blub\'']]], 'arg4' => ['operator' => ['contains'], 'value' => ['FALSE']], 'arg5' => ['operator' => ['matches'], 'value' => [[1, 2, 3]]], 'arg6' => ['operator' => ['matches'], 'value' => ['current.party.accounts']]];
        $parser = $this->getAccessibleMock(PointcutExpressionParser::class, ['dummy'], [], '', false);
        $result = $parser->_call('getArgumentConstraintsFromMethodArgumentsPattern', $methodArgumentsPattern);
        $this->assertEquals($expectedConditions, $result, 'The argument condition string has not been parsed as expected.');
    }