def clean_password2(self): password1 = self.cleaned_data.get('password1', '') password2 = self.cleaned_data.get('password2', '') if password1 != password2: raise forms.ValidationError( _("The two password fields didn't match.")) validate_password(password2, self.instance) return password2
def test_validator_fallback_django_18(self): # In Django 1.8, we use our custom validators with self.assertRaises(ValidationError): # Should be in the list of common passwords validate_password('password') with self.assertRaises(ValidationError): # Should be too short (min is 6 characters) validate_password('short') # This should validate self.assertIsNone(validate_password('zNWJKpyq7idw'))
def test_validator_uses_auth_validators(self): with self.assertRaises(ValidationError): # Should be in the list of common passwords validate_password('password') with self.assertRaises(ValidationError): # Should be too short (min is 6 characters) validate_password('short') with self.assertRaises(ValidationError): # Numeric passwords not allowed validate_password('9796474332') # This should validate self.assertIsNone(validate_password('zNWJKpyq7idw'))
def clean_new_password2(self): new_password2 = super(PasswordChangeForm, self).clean_new_password2() # For backward compatibility with Django 1.8 validate_password(new_password2, self.user) return new_password2
def test_validator_fallback_if_auth_setting_empty(self): # If AUTH_PASSWORD_VALIDATORS we should still enforce validation # consistent with previous versions of Oscar. with self.assertRaises(ValidationError): # Should be too short (min is 6 characters) validate_password('short')