Addresses PR feedback

- Adds `file_name` to `ExportTemplateBulkEditForm.nullable_fields`
- Shortens max length of `ExportTemplate.file_name` to 200 chars
- Adds tests for `ExportTemplateFilterSet.file_extension`
This commit is contained in:
Jason Novinger 2025-03-19 12:43:42 -05:00
parent 13205ab9ca
commit 4e66ede35e
4 changed files with 21 additions and 8 deletions

View File

@ -170,7 +170,7 @@ class ExportTemplateBulkEditForm(BulkEditForm):
widget=BulkEditNullBooleanSelect()
)
nullable_fields = ('description', 'mime_type', 'file_extension')
nullable_fields = ('description', 'mime_type', 'file_name', 'file_extension')
class SavedFilterBulkEditForm(BulkEditForm):

View File

@ -11,6 +11,6 @@ class Migration(migrations.Migration):
migrations.AddField(
model_name='exporttemplate',
name='file_name',
field=models.CharField(blank=True, max_length=1000),
field=models.CharField(blank=True, max_length=200),
),
]

View File

@ -409,17 +409,17 @@ class ExportTemplate(SyncedDataMixin, CloningMixin, ExportTemplatesMixin, Change
verbose_name=_('MIME type'),
help_text=_('Defaults to <code>text/plain; charset=utf-8</code>')
)
file_name = models.CharField(
max_length=200,
blank=True,
help_text=_('Filename to give to the rendered export file')
)
file_extension = models.CharField(
verbose_name=_('file extension'),
max_length=15,
blank=True,
help_text=_('Extension to append to the rendered filename')
)
file_name = models.CharField(
max_length=1000,
blank=True,
help_text=_('Filename to give to the rendered export file')
)
as_attachment = models.BooleanField(
verbose_name=_('as attachment'),
default=True,

View File

@ -624,7 +624,10 @@ class ExportTemplateTestCase(TestCase, ChangeLoggedFilterSetTests):
export_templates = (
ExportTemplate(name='Export Template 1', template_code='TESTING', description='foobar1'),
ExportTemplate(name='Export Template 2', template_code='TESTING', description='foobar2'),
ExportTemplate(
name='Export Template 2', template_code='TESTING', description='foobar2',
file_name='export_template_2', file_extension='nagios',
),
ExportTemplate(name='Export Template 3', template_code='TESTING', file_name='export_filename'),
)
ExportTemplate.objects.bulk_create(export_templates)
@ -656,6 +659,16 @@ class ExportTemplateTestCase(TestCase, ChangeLoggedFilterSetTests):
params = {'file_name': ['export_filename']}
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 1)
def test_file_extension(self):
params = {'file_extension': ['nagios']}
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 1)
params = {'file_name': ['export_template_2'], 'file_extension': ['nagios']}
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 1)
params = {'file_name': 'export_filename', 'file_extension': ['nagios']}
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 0)
class ImageAttachmentTestCase(TestCase, ChangeLoggedFilterSetTests):
queryset = ImageAttachment.objects.all()