/** * Check if all admin options are provided * * @param InputInterface $input * @return string[] */ public function validate(InputInterface $input) { $errors = []; $user = new \Magento\Framework\DataObject(); $user->setFirstname($input->getOption(AdminAccount::KEY_FIRST_NAME))->setLastname($input->getOption(AdminAccount::KEY_LAST_NAME))->setUsername($input->getOption(AdminAccount::KEY_USER))->setEmail($input->getOption(AdminAccount::KEY_EMAIL))->setPassword($input->getOption(AdminAccount::KEY_PASSWORD) === null ? '' : $input->getOption(AdminAccount::KEY_PASSWORD)); $validator = new \Magento\Framework\Validator\DataObject(); $this->validationRules->addUserInfoRules($validator); $this->validationRules->addPasswordRules($validator); if (!$validator->isValid($user)) { $errors = array_merge($errors, $validator->getMessages()); } return $errors; }
/** * Add validation rules for particular fields * * @return \Zend_Validate_Interface */ protected function _getValidationRulesBeforeSave() { /** @var $validator \Magento\Framework\Validator\DataObject */ $validator = $this->_validatorObject->create(); $this->validationRules->addUserInfoRules($validator); // Add validation rules for the password management fields if ($this->_willSavePassword()) { $this->validationRules->addPasswordRules($validator); if ($this->hasPasswordConfirmation()) { $this->validationRules->addPasswordConfirmationRule($validator, $this->getPasswordConfirmation()); } } return $validator; }
public function testAddPasswordRules() { $this->validator->expects($this->exactly(3))->method('addRule')->willReturn($this->validator); $this->assertSame($this->validator, $this->rules->addPasswordRules($this->validator)); }