ira/tests/report/test_report_templates.py

25 lines
960 B
Python

import unittest
from report.report_templates import ReportTemplateManager, QueryType, DetailLevel
class TestReportTemplates(unittest.TestCase):
def setUp(self):
self.manager = ReportTemplateManager()
self.manager.initialize_default_templates()
def test_template_retrieval(self):
template = self.manager.get_template(QueryType.FACTUAL, DetailLevel.BRIEF)
self.assertIsNotNone(template)
self.assertEqual(template.detail_level, DetailLevel.BRIEF)
self.assertEqual(template.query_type, QueryType.FACTUAL)
def test_template_validation(self):
template = self.manager.get_template(QueryType.FACTUAL, DetailLevel.BRIEF)
self.assertTrue(template.validate())
def test_all_templates_available(self):
templates = self.manager.get_available_templates()
self.assertEqual(len(templates), 12) # 3 query types * 4 detail levels
if __name__ == '__main__':
unittest.main()