Coverage for tests/test_ds_icons.py: 96%
28 statements
« prev ^ index » next coverage.py v7.15.4, created at 2026-08-20 22:09 +0000
« prev ^ index » next coverage.py v7.15.4, created at 2026-08-20 22:09 +0000
1import unittest
3from webapp.app import create_app
6class TestDsIcons(unittest.TestCase):
7 def setUp(self):
8 app = create_app(testing=True)
9 self.client = app.test_client()
11 def test_ds_icon_is_served(self):
12 response = self.client.get("/icons/close.svg")
14 self.assertEqual(response.status_code, 200)
15 self.assertEqual(response.location, None)
16 self.assertIn("image/svg+xml", response.content_type)
17 self.assertIn(b"<svg", response.data)
19 def test_missing_ds_icon_returns_404(self):
20 response = self.client.get("/icons/not-real.svg")
22 self.assertEqual(response.status_code, 404)
24 def test_static_ds_icon_is_served(self):
25 response = self.client.get("/static/icons/close.svg")
27 self.assertEqual(response.status_code, 200)
28 self.assertIn("image/svg+xml", response.content_type)
29 self.assertIn(b"<svg", response.data)
31 def test_missing_static_ds_icon_returns_404(self):
32 response = self.client.get("/static/icons/not-real.svg")
34 self.assertEqual(response.status_code, 404)
36 def test_non_svg_icon_path_returns_404(self):
37 response = self.client.get("/icons/close.png")
39 self.assertEqual(response.status_code, 404)
42if __name__ == "__main__":
43 unittest.main()