Improved coverage.

This commit is contained in:
Antoine Nguyen
2020-04-21 13:58:31 +02:00
parent 161ddb460a
commit 9a13121fde
3 changed files with 35 additions and 11 deletions
+11 -11
View File
@@ -564,17 +564,6 @@ class GeneralParametersForm(param_forms.AdminParametersForm):
"""
super().clean()
cleaned_data = self.cleaned_data
if cleaned_data["authentication_type"] != "ldap":
return cleaned_data
if cleaned_data["ldap_auth_method"] == "searchbind":
required_fields = ["ldap_search_base", "ldap_search_filter"]
else:
required_fields = ["ldap_user_dn_template"]
for f in required_fields:
if f not in cleaned_data or cleaned_data[f] == u'':
self.add_error(f, _("This field is required"))
if cleaned_data["sms_password_recovery"]:
provider = cleaned_data.get("sms_provider")
@@ -586,6 +575,17 @@ class GeneralParametersForm(param_forms.AdminParametersForm):
self.add_error(name, _("This field is required"))
else:
self.add_error("sms_provider", _("This field is required"))
if cleaned_data["authentication_type"] != "ldap":
return cleaned_data
if cleaned_data["ldap_auth_method"] == "searchbind":
required_fields = ["ldap_search_base", "ldap_search_filter"]
else:
required_fields = ["ldap_user_dn_template"]
for f in required_fields:
if f not in cleaned_data or cleaned_data[f] == u'':
self.add_error(f, _("This field is required"))
return cleaned_data
@@ -221,6 +221,15 @@ class PasswordResetTestCase(ModoTestCase):
"We've emailed you instructions for setting your password")
self.assertEqual(len(mail.outbox), 0)
def test_reset_password_announcement(self):
"""Check if announcement is showing."""
self.client.logout()
url = reverse("password_reset")
msg = "Announcement"
self.set_global_parameter("password_recovery_msg", msg)
response = self.client.get(url)
self.assertContains(response, msg)
@mock.patch("oath.accept_totp")
@mock.patch("ovh.Client.get")
@mock.patch("ovh.Client.post")
+15
View File
@@ -226,6 +226,21 @@ sha512crypt is not one of the available choices."]},
"prefix": "core"
})
def test_sms_settings_clean(self):
"""Check sms settings validation."""
url = reverse("core:parameters")
settings = SETTINGS_SAMPLE.copy()
settings["core-sms_password_recovery"] = True
settings["core-sms_provider"] = ""
response = self.client.post(url, settings, format="json")
self.assertEqual(response.status_code, 400)
settings["core-sms_provider"] = "ovh"
response = self.client.post(url, settings, format="json")
self.assertEqual(response.status_code, 400)
errors = response.json()
self.assertIn(
"sms_ovh_application_secret", errors["form_errors"])
class UserSettings(param_forms.UserParametersForm):
"""Stupid user settings form."""