/**
  * @depends testCreatesInputFilterInstance
  */
 public function testUsesConfiguredValidationAndFilterManagerServicesWhenCreatingInputFilter()
 {
     $filters = new FilterPluginManager();
     $filter = function ($value) {
     };
     $filters->setService('foo', $filter);
     $validators = new ValidatorPluginManager();
     $validator = $this->getMock('Zend\\Validator\\ValidatorInterface');
     $validators->setService('foo', $validator);
     $this->services->setService('FilterManager', $filters);
     $this->services->setService('ValidatorManager', $validators);
     $this->services->setService('Config', array('input_filter_specs' => array('filter' => array('input' => array('name' => 'input', 'required' => true, 'filters' => array(array('name' => 'foo')), 'validators' => array(array('name' => 'foo')))))));
     $inputFilter = $this->factory->createServiceWithName($this->filters, 'filter', 'filter');
     $this->assertTrue($inputFilter->has('input'));
     $input = $inputFilter->get('input');
     $filterChain = $input->getFilterChain();
     $this->assertSame($filters, $filterChain->getPluginManager());
     $this->assertEquals(1, count($filterChain));
     $this->assertSame($filter, $filterChain->plugin('foo'));
     $this->assertEquals(1, count($filterChain));
     $validatorChain = $input->getvalidatorChain();
     $this->assertSame($validators, $validatorChain->getPluginManager());
     $this->assertEquals(1, count($validatorChain));
     $this->assertSame($validator, $validatorChain->plugin('foo'));
     $this->assertEquals(1, count($validatorChain));
 }
 /**
  * Create an UploadFile instance
  *
  * @param \Zend\Validator\ValidatorPluginManager $validators
  * @return UploadFile
  */
 public function __invoke($validators)
 {
     $services = $validators->getServiceLocator();
     $validator = new UploadFile($this->creationOptions);
     if ($services->has('Request')) {
         $validator->setRequest($services->get('Request'));
     }
     return $validator;
 }
Beispiel #3
0
 /**
  * @param \Zend\Validator\ValidatorPluginManager $vm
  * @param \Zend\Filter\FilterPluginManager $fm
  */
 private function setFileAlias($vm, $fm)
 {
     $validatorsAliases = array('count' => 'filecount', 'crc32' => 'filecrc32', 'excludeextension' => 'fileexcludeextension', 'excludemimetype' => 'fileexcludemimetype', 'exists' => 'fileexists', 'extension' => 'fileextension', 'filessize' => 'filefilessize', 'hash' => 'filehash', 'imagesize' => 'fileimagesize', 'iscompressed' => 'fileiscompressed', 'isimage' => 'fileisimage', 'md5' => 'filemd5', 'mimetype' => 'filemimetype', 'notexists' => 'filenotexists', 'sha1' => 'filesha1', 'size' => 'filesize', 'upload' => 'fileupload', 'wordcount' => 'filewordcount');
     $filtersAliases = array('decrypt' => 'filedecrypt', 'encrypt' => 'fileencrypt', 'lowercase' => 'filelowercase', 'rename' => 'filerename', 'uppercase' => 'fileuppercase');
     foreach ($validatorsAliases as $key => $value) {
         $vm->setAlias($key, $value);
     }
     foreach ($filtersAliases as $key => $value) {
         $fm->setAlias($key, $value);
     }
 }
 /**
  * {@inheritDoc}
  */
 public function validate($value, SymfonyConstraint $constraint)
 {
     $validatorManager = new ValidatorPluginManager();
     $validator = $validatorManager->get($constraint->validator, $constraint->options);
     if ($validator->isValid($value)) {
         return;
     }
     foreach ($validator->getMessages() as $message) {
         $this->context->addViolation($message, array(), $value);
     }
 }
 public function testInitializeFromPluginManager()
 {
     $events = new EventManager();
     $instance = $this->getMock('\\Zend\\EventManager\\EventsCapableInterface');
     $instance->method('getEventManager')->willReturn($events);
     $listener = $this->getMock('\\Zend\\EventManager\\ListenerAggregateInterface');
     $listener->expects($this->once())->method('attach')->with($events);
     $services = new ServiceManager();
     $services->setService('MyListener', $listener);
     $services->setService('config', array('abacaphiliac/events-capable' => array('eventsCapable' => array(get_class($instance) => array('MyListener')))));
     $validators = new ValidatorPluginManager();
     $validators->setServiceLocator($services);
     $this->sut->initialize($instance, $validators);
 }
 public function setUp()
 {
     $services = $this->services = new ServiceManager();
     $elements = new FormElementManager();
     $filters = new FilterPluginManager();
     $hydrators = new HydratorPluginManager();
     $inputFilters = new InputFilterPluginManager();
     $validators = new ValidatorPluginManager();
     $elements->setServiceLocator($services);
     $filters->setServiceLocator($services);
     $hydrators->setServiceLocator($services);
     $inputFilters->setServiceLocator($services);
     $validators->setServiceLocator($services);
     $services->setService('FilterManager', $filters);
     $services->setService('FormElementManager', $elements);
     $services->setService('HydratorManager', $hydrators);
     $services->setService('InputFilterManager', $inputFilters);
     $services->setService('ValidatorManager', $validators);
     $inputFilters->setInvokableClass('FooInputFilter', 'Zend\\InputFilter\\InputFilter');
     $forms = $this->forms = new FormAbstractServiceFactory();
     $services->addAbstractFactory($forms);
 }
 /**
  * Constructor
  *
  * Merges default aliases pertinent to this plugin manager with those
  * defined in the parent filter plugin manager.
  *
  * @param null|\Zend\ServiceManager\ConfigInterface|\Interop\Container\ContainerInterface $configOrContainerInstance
  * @param array $v3config If $configOrContainerInstance is a container, this
  *     value will be passed to the parent constructor.
  */
 public function __construct($configOrContainerInstance = null, array $v3config = [])
 {
     $this->aliases = array_merge($this->defaultFileValidationAliases, $this->aliases);
     parent::__construct($configOrContainerInstance, $v3config);
 }
 public function __invoke(ValidatorPluginManager $validatorPluginManager)
 {
     $dmm = $validatorPluginManager->getServiceLocator()->get(DataMapperManager::class);
     $class = $this->validatorClass;
     return new $class($this->getCreationOptions(), $dmm);
 }