Add extra tests for ConfigTemplate and ExportTemplate

This commit is contained in:
Renato Almeida de Oliveira Zaroubin 2025-04-08 00:49:53 +00:00
parent 5eb169646d
commit 6245f8302e
3 changed files with 38 additions and 10 deletions

View File

@ -763,6 +763,7 @@ class ConfigTemplateTest(APIViewTestCases.APIViewTestCase):
{ {
'name': 'Config Template 6', 'name': 'Config Template 6',
'template_code': 'Baz: {{ baz }}', 'template_code': 'Baz: {{ baz }}',
'file_name': 'test_config_template_6',
}, },
] ]
bulk_update_data = { bulk_update_data = {
@ -778,7 +779,9 @@ class ConfigTemplateTest(APIViewTestCases.APIViewTestCase):
), ),
ConfigTemplate( ConfigTemplate(
name='Config Template 2', name='Config Template 2',
template_code='Bar: {{ bar }}' template_code='Bar: {{ bar }}',
file_name='config_template_2',
file_extension='test',
), ),
ConfigTemplate( ConfigTemplate(
name='Config Template 3', name='Config Template 3',

View File

@ -1089,8 +1089,11 @@ class ConfigTemplateTestCase(TestCase, ChangeLoggedFilterSetTests):
def setUpTestData(cls): def setUpTestData(cls):
config_templates = ( config_templates = (
ConfigTemplate(name='Config Template 1', template_code='TESTING', description='foobar1'), ConfigTemplate(name='Config Template 1', template_code='TESTING', description='foobar1'),
ConfigTemplate(name='Config Template 2', template_code='TESTING', description='foobar2'), ConfigTemplate(
ConfigTemplate(name='Config Template 3', template_code='TESTING'), name='Config Template 2', template_code='TESTING', description='foobar2',
file_name='config_template_2', file_extension='nagios',
),
ConfigTemplate(name='Config Template 3', template_code='TESTING', file_name='export_filename'),
) )
ConfigTemplate.objects.bulk_create(config_templates) ConfigTemplate.objects.bulk_create(config_templates)
@ -1106,6 +1109,16 @@ class ConfigTemplateTestCase(TestCase, ChangeLoggedFilterSetTests):
params = {'description': ['foobar1', 'foobar2']} params = {'description': ['foobar1', 'foobar2']}
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2) self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2)
def test_file_extension(self):
params = {'file_extension': ['nagios']}
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 1)
params = {'file_name': ['config_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 TagTestCase(TestCase, ChangeLoggedFilterSetTests): class TagTestCase(TestCase, ChangeLoggedFilterSetTests):
queryset = Tag.objects.all() queryset = Tag.objects.all()

View File

@ -301,10 +301,13 @@ class ExportTemplateTestCase(ViewTestCases.PrimaryObjectViewTestCase):
def setUpTestData(cls): def setUpTestData(cls):
site_type = ObjectType.objects.get_for_model(Site) site_type = ObjectType.objects.get_for_model(Site)
TEMPLATE_CODE = """{% for object in queryset %}{{ object }}{% endfor %}""" TEMPLATE_CODE = """{% for object in queryset %}{{ object }}{% endfor %}"""
ENVIRONMENT_PARAMS = """{"trim_blocks": true}"""
export_templates = ( export_templates = (
ExportTemplate(name='Export Template 1', template_code=TEMPLATE_CODE), ExportTemplate(name='Export Template 1', template_code=TEMPLATE_CODE),
ExportTemplate(name='Export Template 2', template_code=TEMPLATE_CODE), ExportTemplate(
name='Export Template 2', template_code=TEMPLATE_CODE, environment_params={"trim_blocks": True}
),
ExportTemplate(name='Export Template 3', template_code=TEMPLATE_CODE, file_name='export_template_3') ExportTemplate(name='Export Template 3', template_code=TEMPLATE_CODE, file_name='export_template_3')
) )
ExportTemplate.objects.bulk_create(export_templates) ExportTemplate.objects.bulk_create(export_templates)
@ -315,6 +318,7 @@ class ExportTemplateTestCase(ViewTestCases.PrimaryObjectViewTestCase):
'name': 'Export Template X', 'name': 'Export Template X',
'object_types': [site_type.pk], 'object_types': [site_type.pk],
'template_code': TEMPLATE_CODE, 'template_code': TEMPLATE_CODE,
'environment_params': ENVIRONMENT_PARAMS,
'file_name': 'template_x', 'file_name': 'template_x',
} }
@ -537,11 +541,14 @@ class ConfigTemplateTestCase(
@classmethod @classmethod
def setUpTestData(cls): def setUpTestData(cls):
TEMPLATE_CODE = """Foo: {{ foo }}""" TEMPLATE_CODE = """Foo: {{ foo }}"""
ENVIRONMENT_PARAMS = """{"trim_blocks": true}"""
config_templates = ( config_templates = (
ConfigTemplate(name='Config Template 1', template_code=TEMPLATE_CODE), ConfigTemplate(name='Config Template 1', template_code=TEMPLATE_CODE),
ConfigTemplate(name='Config Template 2', template_code=TEMPLATE_CODE), ConfigTemplate(
ConfigTemplate(name='Config Template 3', template_code=TEMPLATE_CODE), name='Config Template 2', template_code=TEMPLATE_CODE, environment_params={"trim_blocks": True}
),
ConfigTemplate(name='Config Template 3', template_code=TEMPLATE_CODE, file_name='config_template_3'),
) )
ConfigTemplate.objects.bulk_create(config_templates) ConfigTemplate.objects.bulk_create(config_templates)
@ -549,17 +556,22 @@ class ConfigTemplateTestCase(
'name': 'Config Template X', 'name': 'Config Template X',
'description': 'Config template', 'description': 'Config template',
'template_code': TEMPLATE_CODE, 'template_code': TEMPLATE_CODE,
'environment_params': ENVIRONMENT_PARAMS,
'file_name': 'config_x',
} }
cls.csv_update_data = ( cls.csv_update_data = (
"id,name", "id,name,template_code,file_name",
f"{config_templates[0].pk},Config Template 7", f"{config_templates[0].pk},Config Template 7,{TEMPLATE_CODE},",
f"{config_templates[1].pk},Config Template 8", f"{config_templates[1].pk},Config Template 8,{TEMPLATE_CODE},config_8",
f"{config_templates[2].pk},Config Template 9", f"{config_templates[2].pk},Config Template 9,{TEMPLATE_CODE},",
) )
cls.bulk_edit_data = { cls.bulk_edit_data = {
'description': 'New description', 'description': 'New description',
'mime_type': 'text/html',
'file_extension': 'html',
'as_attachment': True,
} }