/**
  * Adds validation rule for user password
  *
  * @param \Magento\Framework\Validator\DataObject $validator
  * @return \Magento\Framework\Validator\DataObject
  */
 public function addPasswordRules(\Magento\Framework\Validator\DataObject $validator)
 {
     $passwordNotEmpty = new NotEmpty();
     $passwordNotEmpty->setMessage(__('Password is required field.'), NotEmpty::IS_EMPTY);
     $minPassLength = self::MIN_PASSWORD_LENGTH;
     $passwordLength = new StringLength(['min' => $minPassLength, 'encoding' => 'UTF-8']);
     $passwordLength->setMessage(__('Your password must be at least %1 characters.', $minPassLength), \Zend_Validate_StringLength::TOO_SHORT);
     $passwordChars = new Regex('/[a-z].*\\d|\\d.*[a-z]/iu');
     $passwordChars->setMessage(__('Your password must include both numeric and alphabetic characters.'), \Zend_Validate_Regex::NOT_MATCH);
     $validator->addRule($passwordNotEmpty, 'password')->addRule($passwordLength, 'password')->addRule($passwordChars, 'password');
     return $validator;
 }
Beispiel #2
0
 /**
  * @dataProvider isValidDataProvider
  * @param string $value
  * @param int $maxLength
  * @param bool $isValid
  */
 public function testIsValid($value, $maxLength, $isValid)
 {
     $this->_validator->setMax($maxLength);
     $this->assertEquals($isValid, $this->_validator->isValid($value));
 }