示例#1
0
 /**
  * Check builder configuration format
  */
 public function testBuilderConfiguration()
 {
     $this->getMockBuilder('Magento_Validator_Builder')->setMockClassName('Magento_Validator_Test_Builder')->disableOriginalConstructor()->getMock();
     $this->_initConfig(array(__DIR__ . '/_files/validation/positive/builder/validation.xml'));
     $builder = $this->_config->createValidatorBuilder('test_entity_a', 'check_builder');
     $this->assertInstanceOf('Magento_Validator_Test_Builder', $builder);
     $expected = array(array('alias' => '', 'class' => 'Magento_Validator_Test_NotEmpty', 'options' => null, 'property' => 'int', 'type' => 'property'), array('alias' => 'stub', 'class' => 'Validator_Stub', 'options' => array('arguments' => array(new Magento_Validator_Constraint_Option('test_string_argument'), new Magento_Validator_Constraint_Option(array('option1' => 'value1', 'option2' => 'value2')), new Magento_Validator_Constraint_Option_Callback(array('Magento_Validator_Test_Callback', 'getId'), null, true)), 'callback' => array(new Magento_Validator_Constraint_Option_Callback(array('Magento_Validator_Test_Callback', 'configureValidator'), null, true)), 'methods' => array('setOptionThree' => array('method' => 'setOptionThree', 'arguments' => array(new Magento_Validator_Constraint_Option(array('argOption' => 'argOptionValue')), new Magento_Validator_Constraint_Option_Callback(array('Magento_Validator_Test_Callback', 'getId'), null, true), new Magento_Validator_Constraint_Option('10'))), 'enableOptionFour' => array('method' => 'enableOptionFour'))), 'property' => 'int', 'type' => 'property'));
     $this->assertAttributeEquals($expected, '_constraints', $builder);
 }
示例#2
0
 /**
  * Get validator
  *
  * @param array $data
  * @return Magento_Validator
  */
 protected function _getValidator(array $data)
 {
     if (is_null($this->_validator)) {
         $configFiles = Mage::getConfig()->getModuleConfigurationFiles('validation.xml');
         $validatorFactory = new Magento_Validator_Config($configFiles);
         $builder = $validatorFactory->createValidatorBuilder('eav_entity', 'form');
         $builder->addConfiguration('eav_data_validator', array('method' => 'setAttributes', 'arguments' => array($this->getAllowedAttributes())));
         $builder->addConfiguration('eav_data_validator', array('method' => 'setData', 'arguments' => array($data)));
         $this->_validator = $builder->createValidator();
     }
     return $this->_validator;
 }