Coverage for mpcforces_extractor\api\main.py: 100%

16 statements  

« prev     ^ index     » next       coverage.py v7.6.4, created at 2024-11-13 12:05 +0100

1from fastapi import FastAPI 

2from fastapi.staticfiles import StaticFiles 

3from fastapi.templating import Jinja2Templates 

4from mpcforces_extractor.api.routes import ( 

5 database, 

6 extractor, 

7 file_upload, 

8 html_routes, 

9 nodes, 

10 rbe2s, 

11 rbe3s, 

12 subcases, 

13) 

14from mpcforces_extractor.api.config import STATIC_DIR, TEMPLATES_DIR 

15 

16 

17# Setup Jinja2 templates 

18templates = Jinja2Templates(directory=TEMPLATES_DIR) 

19app = FastAPI(redirect_slashes=False) 

20 

21# Mount the static files directory 

22app.mount( 

23 "/static", 

24 StaticFiles(directory=STATIC_DIR), 

25 name="static", 

26) 

27 

28# Include routers with prefixes 

29app.include_router(rbe2s.router, prefix="/api/v1/rbe2s", tags=["rbe2s"]) 

30app.include_router(rbe3s.router, prefix="/api/v1/rbe3s", tags=["rbe3s"]) 

31app.include_router(nodes.router, prefix="/api/v1/nodes", tags=["nodes"]) 

32app.include_router(subcases.router, prefix="/api/v1/subcases", tags=["subcases"]) 

33app.include_router(file_upload.router, prefix="/api/v1", tags=["file_upload"]) 

34app.include_router(extractor.router, prefix="/api/v1", tags=["extractor"]) 

35app.include_router(database.router, prefix="/api/v1", tags=["database"]) 

36app.include_router(html_routes.router, tags=["html_routes"])