Coverage for fastblocks/adapters/sitemap/_routes.py: 0%

12 statements  

« prev     ^ index     » next       coverage.py v7.10.6, created at 2025-09-21 04:50 -0700

1import typing as t 

2 

3from acb.adapters import import_adapter 

4from acb.depends import depends 

5from starlette.routing import Route 

6from fastblocks.adapters.sitemap._base import SitemapProtocol 

7 

8 

9def get_sitemap_adapter() -> SitemapProtocol: 

10 return t.cast("SitemapProtocol", import_adapter("sitemap")) 

11 

12 

13def sitemap_endpoint(request: t.Any) -> t.Any: 

14 adapter = get_sitemap_adapter() 

15 return depends.get(adapter.sitemap)(request) 

16 

17 

18routes = [Route("/sitemap.xml", sitemap_endpoint)] 

19sitemap_routes: dict[str, t.Any] = {"sitemap_endpoint": sitemap_endpoint}