import unittest from app.webui import DASHBOARD class WebUITests(unittest.TestCase): def test_dashboard_is_english(self): self.assertIn('', DASHBOARD) self.assertIn("System status", DASHBOARD) self.assertIn("Recent incidents", DASHBOARD) self.assertIn("TZSP datagrams", DASHBOARD) self.assertIn("Extended statistics", DASHBOARD) self.assertIn("Custom Suricata signatures", DASHBOARD) self.assertIn("Signature sources", DASHBOARD) self.assertIn("Refresh OISF catalog", DASHBOARD) for polish_text in ( "Ładowanie", "Tryb DEV", "Brak alertów", "Ostatnie alerty", "Źródło", "Blokady RouterOS", ): self.assertNotIn(polish_text, DASHBOARD) def test_dashboard_uses_status_endpoint(self): self.assertIn("api('/api/status')", DASHBOARD) self.assertIn("/api/admin/alerts/clear", DASHBOARD) self.assertIn("/api/admin/rules/suppress", DASHBOARD) self.assertIn("/api/admin/rules/sources", DASHBOARD) self.assertIn("Download / update active signatures", DASHBOARD) def test_dashboard_has_top_sections_and_local_time_formatting(self): for section in ("overview", "incidents", "statistics", "system", "rules", "maintenance"): self.assertIn(f'data-view="{section}"', DASHBOARD) self.assertIn(f'id="view-{section}"', DASHBOARD) self.assertIn("function fmtTime", DASHBOARD) self.assertIn("Repeated matches are aggregated", DASHBOARD) if __name__ == "__main__": unittest.main()