Error out in human friendly way if mimetype is missing on response
まだ誰も着手していません。
評価
調査の方向性
Start in openapi_core/validation/response/validators.py at the response data lookup, then inspect schema/responses/models.py and schema/content/models.py where the missing mimetype reaches fnmatch. Reproduce the None-mimetype case and make the resulting failure human-friendly, with a test showing the expected error.
索引モデルが issue の本文から書いたものです。
説明
Currently one gets:
../../../../.local/share/virtualenvs/woocart-api-zie1bQwL/lib/python3.6/site-packages/openapi_core/validation/response/validators.py:37: in validate
data, data_errors = self._get_data(response, operation_response)
../../../../.local/share/virtualenvs/woocart-api-zie1bQwL/lib/python3.6/site-packages/openapi_core/validation/response/validators.py:53: in _get_data
media_type = operation_response[response.mimetype]
../../../../.local/share/virtualenvs/woocart-api-zie1bQwL/lib/python3.6/site-packages/openapi_core/schema/responses/models.py:21: in __getitem__
return self.content[mimetype]
../../../../.local/share/virtualenvs/woocart-api-zie1bQwL/lib/python3.6/site-packages/openapi_core/schema/content/models.py:18: in __getitem__
if fnmatch.fnmatch(mimetype, key):
../../../../.local/share/virtualenvs/woocart-api-zie1bQwL/lib/python3.6/fnmatch.py:34: in fnmatch
name = os.path.normcase(name)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
s = None
def normcase(s):
"""Normalize case of pathname. Has no effect under Posix"""
> s = os.fspath(s)
E TypeError: expected str, bytes or os.PathLike object, not NoneType
- 主要言語
- Python
- スター
- 368
- フォーク
- 140
- PR マージ指標
- 30日以内にマージされた PR はありません
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
python-openapi/openapi-core のほかの issue
-
kind/bug
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
python-openapi/openapi-core#1188 · コメント 2 件 ·
-
kind/bug
難易度 3/5 1〜2日 初心者へのやさしさ 68/100
python-openapi/openapi-core#1225 · コメント 2 件 ·
-
kind/bug
難易度 3/5 1〜2日 初心者へのやさしさ 76/100
python-openapi/openapi-core#1212 ·
-
[Bug]: Query parameter validation fails to match empty string when listed as a valid enum value オープンkind/bug
難易度 3/5 1〜2日 初心者へのやさしさ 68/100
python-openapi/openapi-core#1210 ·
-
kind/bug kind/bug/confirmed
難易度 3/5 1〜2日 初心者へのやさしさ 58/100
python-openapi/openapi-core#1180 · コメント 3 件 ·
python-openapi/openapi-core の issue をすべて見る
似ている issue
-
enhancement
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
canonical/paas-charm#368 · コメント 1 件 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
-
tech debt
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
-
難易度 1/5 1時間未満 初心者へのやさしさ 90/100
StevenBlack/hosts#3256 ·
-
難易度 1/5 1時間未満 初心者へのやさしさ 90/100
qualcomm/qai-appbuilder#275 ·