Better test

This commit is contained in:
Spitap
2023-04-23 17:48:12 +02:00
parent 41d1ce1f66
commit 2183d90729
2 changed files with 14 additions and 5 deletions
+4 -2
View File
@@ -44,10 +44,12 @@ class PDFCredentialsSettingsSerializer(serializers.Serializer):
def validate(self, data):
"""Check that directory exists."""
enabled_pdfcredentials = data.get("enabled_pdfcredentials", False)
enabled_pdfcredentials = data.get("enabled_pdfcredentials", None)
condition = (enabled_pdfcredentials or
param_tools.get_global_parameter("enabled_pdfcredentials")
(enabled_pdfcredentials is None and
param_tools.get_global_parameter("enabled_pdfcredentials")
)
)
if condition:
storage_dir = data.get("storage_dir", None)
if storage_dir is not None:
+10 -3
View File
@@ -170,12 +170,19 @@ class PDFCredentialViewTestCase(ModoAPITestCase):
self.set_global_parameter("storage_dir", "/nonexistentdir")
self.set_global_parameter("enabled_pdfcredentials", False)
url = reverse("v2:parameter-detail", args=["pdfcredentials"])
data = {
"webpanel_url": "http://localhost",
"smtp_server_address": "mail.localhost",
"imap_server_address": "mail.localhost",
}
# Test that we can't activate it without providing a valid storage dir.
data = {"enabled_pdfcredentials": True}
data["enabled_pdfcredentials"] = True
resp = self.client.put(url, data, format="json")
self.assertEqual(resp.status_code, 400)
self.assertIn(b"Directory not found", resp.content)
# Test that we can disable it even if the directory is not right.
self.set_global_parameter("enabled_pdfcredentials", False)
data = {"enabled_pdfcredentials": True}
self.set_global_parameter("enabled_pdfcredentials", True)
data["enabled_pdfcredentials"] = False
resp = self.client.put(url, data, format="json")
self.assertEqual(resp.status_code, 200)