Skip to content

Commit

Permalink
AquesTalk記法のバリデータ (#315) (#681)
Browse files Browse the repository at this point in the history
* AquesTalk記法のバリデータ  (#315)

* aplly linter

* テストの拡充とコードの位置を変更した

* validate_kana webAPIの追加

* コメント内のテキストの修正

* エラーを返す旨を説明に追加

---------

Co-authored-by: takana-v <[email protected]>
  • Loading branch information
FujisakiEx and takana-v authored May 25, 2023
1 parent 3afd8bf commit c341eb8
Showing 1 changed file with 31 additions and 0 deletions.
31 changes: 31 additions & 0 deletions run.py
Original file line number Diff line number Diff line change
Expand Up @@ -1044,6 +1044,37 @@ def supported_devices(
def engine_manifest():
return engine_manifest_loader.load_manifest()

@app.post(
"/validate_kana",
response_model=bool,
tags=["その他"],
summary="テキストがAquesTalkライクな記法に従っているか判定する",
responses={
400: {
"description": "テキストが不正です",
"model": ParseKanaBadRequest,
}
},
)
def validate_kana(text: str):
"""
テキストがAquesTalkライクな記法に従っているかどうかを判定します。
従っていない場合はエラーが返ります。
Parameters
----------
text: str
判定する対象の文字列
"""
try:
parse_kana(text)
return True
except ParseKanaError as err:
raise HTTPException(
status_code=400,
detail=ParseKanaBadRequest(err).dict(),
)

@app.get("/setting", response_class=HTMLResponse, tags=["設定"])
def setting_get(request: Request):
settings = setting_loader.load_setting_file()
Expand Down

0 comments on commit c341eb8

Please sign in to comment.