Coverage for app/main.py: 100%

12 statements  

« prev     ^ index     » next       coverage.py v7.6.10, created at 2025-01-15 01:44 +0000

1from fastapi import FastAPI 

2 

3# CORSミドルウェア 

4from fastapi.middleware.cors import CORSMiddleware 

5 

6# カスタムHTTPミドルウェア 

7from app.core.middleware import ( 

8 ErrorHandlingMiddleware, 

9 LoggingMiddleware, 

10) 

11from app.ddd.infrastructure.log.logger import * # log設定読み込み 

12from app.ddd.presentation.endpoint import main_router 

13 

14description = """ 

15Webアプリのバックエンドのベースラインコード実装 

16 

17## Health 

18- ヘルスの取得 

19 

20## User 

21- Userの作成 

22- Userの取得 

23- Userの一覧 

24- Userの削除 

25""" 

26 

27app = FastAPI( 

28 # description=description, 

29 # title='title', # APIに名前がある場合変更 

30 # version="1", # バージョンを記述する場合 

31 openapi_tags=[ 

32 { 

33 "name": "health", 

34 "description": "ヘルスに関する操作。", 

35 }, 

36 # { 

37 # "name": "/token", 

38 # "description": "トークンに関する操作", 

39 # }, 

40 { 

41 "name": "user", 

42 "description": "Userーに関する操作。", 

43 }, 

44 { 

45 "name": "user-report", 

46 "description": "Userーレポートに関する操作。", 

47 }, 

48 # { 

49 # "name": "/conversation", 

50 # "description": "会話に関する操作。", 

51 # }, 

52 # { 

53 # "name": "/file", 

54 # "description": "ファイルに関する操作。", 

55 # }, 

56 ], 

57) 

58 

59# CORSのオリジン 

60origins = [ 

61 "http://localhost", 

62 "http://localhost:8080", 

63] 

64 

65# ミドルウェア登録(middlewareは逆順にコールされる) 

66app.add_middleware(ErrorHandlingMiddleware) # エラーハンドリングに関するミドルウェア 

67app.add_middleware(LoggingMiddleware) # ログに関するミドルウェア 

68app.add_middleware( 

69 CORSMiddleware, # CORSに関するミドルウェア 

70 allow_origins=origins, 

71 allow_credentials=True, 

72 allow_methods=["*"], 

73 allow_headers=["*"], 

74) 

75 

76# ルーター登録 

77app.include_router(main_router)