diff options
Diffstat (limited to 'pydis_site/apps')
| -rw-r--r-- | pydis_site/apps/api/migrations/0088_new_filter_schema.py | 4 | ||||
| -rw-r--r-- | pydis_site/apps/api/models/bot/filters.py | 2 | ||||
| -rw-r--r-- | pydis_site/apps/api/tests/test_filters.py | 3 | 
3 files changed, 5 insertions, 4 deletions
| diff --git a/pydis_site/apps/api/migrations/0088_new_filter_schema.py b/pydis_site/apps/api/migrations/0088_new_filter_schema.py index 2e1d78c9..675fdcec 100644 --- a/pydis_site/apps/api/migrations/0088_new_filter_schema.py +++ b/pydis_site/apps/api/migrations/0088_new_filter_schema.py @@ -64,7 +64,7 @@ def forward(apps: Apps, schema_editor: BaseDatabaseSchemaEditor) -> None:                  updated_at=object_.updated_at,                  filter_list=list_,                  description=object_.comment, -                additional_settings=None, +                additional_settings={},                  guild_pings=None,                  filter_dm=None,                  dm_pings=None, @@ -105,7 +105,7 @@ class Migration(migrations.Migration):                  ('updated_at', models.DateTimeField(auto_now=True)),                  ('content', models.CharField(help_text='The definition of this filter.', max_length=100)),                  ('description', models.CharField(help_text='Why this filter has been added.', max_length=200, null=True)), -                ('additional_settings', models.JSONField(help_text='Additional settings which are specific to this filter.', null=True)), +                ('additional_settings', models.JSONField(help_text='Additional settings which are specific to this filter.', default=dict)),                  ('guild_pings', django.contrib.postgres.fields.ArrayField(base_field=models.CharField(max_length=100), help_text='Who to ping when this filter triggers.', size=None, null=True)),                  ('filter_dm', models.BooleanField(help_text='Whether DMs should be filtered.', null=True)),                  ('dm_pings', django.contrib.postgres.fields.ArrayField(base_field=models.CharField(max_length=100), help_text='Who to ping when this filter triggers on a DM.', size=None, null=True)), diff --git a/pydis_site/apps/api/models/bot/filters.py b/pydis_site/apps/api/models/bot/filters.py index aadb39aa..71f8771f 100644 --- a/pydis_site/apps/api/models/bot/filters.py +++ b/pydis_site/apps/api/models/bot/filters.py @@ -132,7 +132,7 @@ class FilterBase(ModelTimestampMixin, ModelReprMixin, models.Model):          help_text="Why this filter has been added.", null=True      )      additional_settings = models.JSONField( -        null=True, help_text="Additional settings which are specific to this filter." +        help_text="Additional settings which are specific to this filter.", default=dict      )      filter_list = models.ForeignKey(          FilterList, models.CASCADE, related_name="filters", diff --git a/pydis_site/apps/api/tests/test_filters.py b/pydis_site/apps/api/tests/test_filters.py index ebc4a2cf..5059d651 100644 --- a/pydis_site/apps/api/tests/test_filters.py +++ b/pydis_site/apps/api/tests/test_filters.py @@ -230,6 +230,7 @@ class GenericFilterTests(AuthenticatedAPITestCase):      def test_creation_missing_field(self) -> None:          for name, sequence in get_test_sequences().items(): +            ignored_fields = sequence.ignored_fields + ("id", "additional_settings")              with self.subTest(name=name):                  saved = sequence.model(**sequence.object)                  save_nested_objects(saved) @@ -237,7 +238,7 @@ class GenericFilterTests(AuthenticatedAPITestCase):                  for field in sequence.model._meta.get_fields():                      with self.subTest(field=field): -                        if field.null or field.name in sequence.ignored_fields + ("id",): +                        if field.null or field.name in ignored_fields:                              continue                          test_data = data.copy() | 
