public function initializeActionMethodValidatorsDoesNotAddValidatorForIgnoredArgumentsWithoutEvaluation($evaluateIgnoredValidationArgument, $setValidatorShouldBeCalled)
{
$this->actionController = $this->getAccessibleMock(ActionController::class, ['getInformationNeededForInitializeActionMethodValidators']);
$mockArgument = $this->getMockBuilder(Mvc\Controller\Argument::class)->disableOriginalConstructor()->getMock();
$mockArgument->expects($this->any())->method('getName')->will($this->returnValue('node'));
$arguments = new Arguments();
$arguments['node'] = $mockArgument;
$ignoredValidationArguments = ['showAction' => ['node' => ['evaluate' => $evaluateIgnoredValidationArgument]]];
$mockValidator = $this->createMock(ValidatorInterface::class);
$parameterValidators = ['node' => $mockValidator];
$this->actionController->expects($this->any())->method('getInformationNeededForInitializeActionMethodValidators')->will($this->returnValue([[], [], [], $ignoredValidationArguments]));
$this->inject($this->actionController, 'actionMethodName', 'showAction');
$this->inject($this->actionController, 'arguments', $arguments);
$this->inject($this->actionController, 'objectManager', $this->mockObjectManager);
$mockValidatorResolver = $this->createMock(ValidatorResolver::class);
$mockValidatorResolver->expects($this->any())->method('buildMethodArgumentsValidatorConjunctions')->will($this->returnValue($parameterValidators));
$this->inject($this->actionController, 'validatorResolver', $mockValidatorResolver);
if ($setValidatorShouldBeCalled) {
$mockArgument->expects($this->once())->method('setValidator');
} else {
$mockArgument->expects($this->never())->method('setValidator');
}
$this->actionController->_call('initializeActionMethodValidators');
}