public function globalRuntimeEvaluationsDefinitionAreAddedCorrectlyToThePointcutFilterComposite()
{
$existingRuntimeEvaluationsDefintion = ['&&' => ['&&' => ['methodArgumentConstraints' => ['usage' => ['operator' => 'in', 'value' => ['\'usage1\'', '\'usage2\'', '"usage3"']]]]]];
$pointcutFilterComposite = $this->getAccessibleMock(Pointcut\PointcutFilterComposite::class, ['dummy'], [], '', false);
$pointcutFilterComposite->_set('runtimeEvaluationsDefinition', $existingRuntimeEvaluationsDefintion);
$newRuntimeEvaluationsDefinition = ['&&' => ['evaluateConditions' => [['operator' => '==', 'leftValue' => '"bar"', 'rightValue' => 4]]]];
$pointcutFilterComposite->setGlobalRuntimeEvaluationsDefinition($newRuntimeEvaluationsDefinition);
$expectedResult = ['&&' => ['&&' => ['methodArgumentConstraints' => ['usage' => ['operator' => 'in', 'value' => ['\'usage1\'', '\'usage2\'', '"usage3"']]]], 'evaluateConditions' => [['operator' => '==', 'leftValue' => '"bar"', 'rightValue' => 4]]]];
$this->assertEquals($expectedResult, $pointcutFilterComposite->getRuntimeEvaluationsDefinition(), 'The runtime evaluations definition has not been added correctly to the pointcut filter composite.');
}