aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Boris Muratov <[email protected]>2023-04-06 01:10:33 +0300
committerGravatar Boris Muratov <[email protected]>2023-04-06 01:10:33 +0300
commit076c2e910cdac0f168084caaf7d1331fc40a638a (patch)
tree61879497cd258e02a73b731beba93962674da0d4
parentFix test (diff)
Adjust to site using dicts in additional_settings instead of JSON strings
This is to make sure that the unique constraint always compares between dicts instead of sometimes dealing with nulls.
-rw-r--r--bot/exts/filtering/_filters/filter.py4
-rw-r--r--bot/exts/filtering/filtering.py4
-rw-r--r--tests/bot/exts/filtering/test_discord_token_filter.py2
-rw-r--r--tests/bot/exts/filtering/test_extension_filter.py2
-rw-r--r--tests/bot/exts/filtering/test_token_filter.py2
5 files changed, 6 insertions, 8 deletions
diff --git a/bot/exts/filtering/_filters/filter.py b/bot/exts/filtering/_filters/filter.py
index 128e84645..2b8f8d5d4 100644
--- a/bot/exts/filtering/_filters/filter.py
+++ b/bot/exts/filtering/_filters/filter.py
@@ -31,9 +31,7 @@ class Filter(FieldRequiring):
self.updated_at = arrow.get(filter_data["updated_at"])
self.actions, self.validations = create_settings(filter_data["settings"], defaults=defaults)
if self.extra_fields_type:
- self.extra_fields = self.extra_fields_type.parse_raw(
- filter_data["additional_settings"] or "{}" # noqa: P103
- )
+ self.extra_fields = self.extra_fields_type.parse_obj(filter_data["additional_settings"])
else:
self.extra_fields = None
diff --git a/bot/exts/filtering/filtering.py b/bot/exts/filtering/filtering.py
index 8fd4ddb13..392428bb0 100644
--- a/bot/exts/filtering/filtering.py
+++ b/bot/exts/filtering/filtering.py
@@ -1177,7 +1177,7 @@ class Filtering(Cog):
description = description or None
payload = {
"filter_list": list_id, "content": content, "description": description,
- "additional_settings": json.dumps(filter_settings), **settings
+ "additional_settings": filter_settings, **settings
}
response = await bot.instance.api_client.post('bot/filter/filters', json=to_serializable(payload))
new_filter = filter_list.add_filter(list_type, response)
@@ -1220,7 +1220,7 @@ class Filtering(Cog):
description = description or None
payload = {
"filter_list": list_id, "content": content, "description": description,
- "additional_settings": json.dumps(filter_settings), **settings
+ "additional_settings": filter_settings, **settings
}
response = await bot.instance.api_client.patch(
f'bot/filter/filters/{filter_.id}', json=to_serializable(payload)
diff --git a/tests/bot/exts/filtering/test_discord_token_filter.py b/tests/bot/exts/filtering/test_discord_token_filter.py
index 4d7e69bdc..a5cddf8d9 100644
--- a/tests/bot/exts/filtering/test_discord_token_filter.py
+++ b/tests/bot/exts/filtering/test_discord_token_filter.py
@@ -22,7 +22,7 @@ class DiscordTokenFilterTests(unittest.IsolatedAsyncioTestCase):
"content": "discord_token",
"description": None,
"settings": {},
- "additional_settings": "{}", # noqa: P103
+ "additional_settings": {},
"created_at": now,
"updated_at": now
})
diff --git a/tests/bot/exts/filtering/test_extension_filter.py b/tests/bot/exts/filtering/test_extension_filter.py
index 800fad3a0..827d267d2 100644
--- a/tests/bot/exts/filtering/test_extension_filter.py
+++ b/tests/bot/exts/filtering/test_extension_filter.py
@@ -25,7 +25,7 @@ class ExtensionsListTests(unittest.IsolatedAsyncioTestCase):
for i, filter_content in enumerate(self.whitelist, start=1):
filters.append({
"id": i, "content": filter_content, "description": None, "settings": {},
- "additional_settings": "{}", "created_at": now, "updated_at": now # noqa: P103
+ "additional_settings": {}, "created_at": now, "updated_at": now # noqa: P103
})
self.filter_list.add_list({
"id": 1,
diff --git a/tests/bot/exts/filtering/test_token_filter.py b/tests/bot/exts/filtering/test_token_filter.py
index 82cc6b67e..03fa6b4b9 100644
--- a/tests/bot/exts/filtering/test_token_filter.py
+++ b/tests/bot/exts/filtering/test_token_filter.py
@@ -40,7 +40,7 @@ class TokenFilterTests(unittest.IsolatedAsyncioTestCase):
"content": pattern,
"description": None,
"settings": {},
- "additional_settings": "{}", # noqa: P103
+ "additional_settings": {},
"created_at": now,
"updated_at": now
})