quart.testing パッケージ#
サブモジュール#
- quart.testing.app モジュール
- quart.testing.client モジュール
QuartClientQuartClient.delete()QuartClient.delete_cookie()QuartClient.get()QuartClient.head()QuartClient.http_connection_classQuartClient.open()QuartClient.options()QuartClient.patch()QuartClient.post()QuartClient.put()QuartClient.request()QuartClient.session_transaction()QuartClient.set_cookie()QuartClient.trace()QuartClient.websocket()QuartClient.websocket_connection_class
- quart.testing.connections モジュール
- quart.testing.utils モジュール
モジュール内容#
- class quart.testing.QuartCliRunner(app: Quart, **kwargs: Any)#
ベース:
CliRunner- invoke(cli: Any = None, args: Any = None, **kwargs: Any) Any#
分離された環境でコマンドを実行します。引数はコマンドラインスクリプトに直接転送され、extraキーワード引数はコマンドの
main()関数に渡されます。これは
Resultオブジェクトを返します。- パラメーター:
cli – 実行するコマンド
args – 実行する引数。反復可能オブジェクトまたは文字列として指定できます。文字列として指定された場合、Unixシェルコマンドとして解釈されます。
shlex.split()の詳細を参照してください。input – sys.stdinの入力データ。
env – 環境のオーバーライド。
catch_exceptions –
SystemExit以外の例外をキャッチするかどうか。extra –
main()に渡すキーワード引数。color – 出力にカラーコードを含めるかどうか。アプリケーションはこれを明示的にオーバーライドできます。
バージョン 8.0 で変更: 結果オブジェクトには、実行されたコマンドから返された値を持つ
return_value属性があります。バージョン 4.0 で変更:
colorパラメーターを追加しました。バージョン 3.0 で変更:
catch_exceptionsパラメーターを追加しました。バージョン 3.0 で変更: 結果オブジェクトには、利用可能な場合、トレースバックを持つ
exc_info属性があります。
- class quart.testing.QuartClient(app: Quart, use_cookies: bool = True)#
ベース:
object- delete_cookie(server_name: str, key: str, path: str = '/', domain: str | None = None) None#
クッキーを削除します(すぐに期限切れに設定します)。
- http_connection_class#
TestHTTPConnectionのエイリアス
- async open(path: str, *, method: str = 'GET', headers: dict | ~werkzeug.datastructures.headers.Headers | None = None, data: AnyStr | None = None, form: dict | None = None, files: dict[str, ~quart.datastructures.FileStorage] | None = None, query_string: dict | None = None, json: ~typing.Any = <object object>, scheme: str = 'http', follow_redirects: bool = False, root_path: str = '', http_version: str = '1.1', scope_base: dict | None = None, auth: ~werkzeug.datastructures.auth.Authorization | tuple[str, str] | None = None, subdomain: str | None = None) Response#
- request(path: str, *, method: str = 'GET', headers: dict | Headers | None = None, query_string: dict | None = None, scheme: str = 'http', root_path: str = '', http_version: str = '1.1', scope_base: dict | None = None, auth: Authorization | tuple[str, str] | None = None, subdomain: str | None = None) TestHTTPConnectionProtocol#
- session_transaction(path: str = '/', *, method: str = 'GET', headers: dict | ~werkzeug.datastructures.headers.Headers | None = None, query_string: dict | None = None, scheme: str = 'http', data: AnyStr | None = None, form: dict | None = None, json: ~typing.Any = <object object>, root_path: str = '', http_version: str = '1.1', auth: ~werkzeug.datastructures.auth.Authorization | tuple[str, str] | None = None) AsyncGenerator[SessionMixin, None]#
- set_cookie(server_name: str, key: str, value: str = '', max_age: int | timedelta | None = None, expires: int | float | datetime | None = None, path: str = '/', domain: str | None = None, secure: bool = False, httponly: bool = False, samesite: str = None) None#
クッキージャーにクッキーを設定します。
引数は標準的なクッキーの要素であり、これはstdlibのSimpleCookieコードのラッパーです。
- websocket(path: str, *, headers: dict | Headers | None = None, query_string: dict | None = None, scheme: str = 'ws', subprotocols: list[str] | None = None, root_path: str = '', http_version: str = '1.1', scope_base: dict | None = None, auth: Authorization | tuple[str, str] | None = None, subdomain: str | None = None) TestWebsocketConnectionProtocol#
- websocket_connection_class#
TestWebsocketConnectionのエイリアス
- class quart.testing.TestApp(app: Quart, startup_timeout: int = 6, shutdown_timeout: int = 6)#
ベース:
object- async shutdown() None#
- async startup() None#
- test_client() TestClientProtocol#
- quart.testing.make_test_body_with_headers(*, data: AnyStr | None = None, form: dict | None = None, files: dict[str, FileStorage] | None = None, json: Any = <object object>, app: Quart | None = None) tuple[bytes, Headers]#
ヘッダー付きの本文バイト列を作成します。
- パラメーター:
data – リクエスト本文に送信する生のデータ。
form – リクエスト本文にフォームエンコードして送信するキーと値のペアデータ。
files – リクエスト本文にファイルエンコードして送信するキーとFileStorageのペアデータ。
json – リクエスト本文にJSONエンコードして送信するデータ。
- quart.testing.make_test_headers_path_and_query_string(app: Quart, path: str, headers: dict | Headers | None = None, query_string: dict | None = None, auth: Authorization | tuple[str, str] | None = None, subdomain: str | None = None) tuple[Headers, str, bytes]#
テスト用のデフォルト値を使用して、ヘッダーとパスを作成します。
- パラメーター:
app – テスト対象のアプリケーション。
path – 要求するパス。`query_string`引数が定義されていない場合、この引数は「?」で区切られ、その後の部分が`query_string`とみなされます。
headers – 送信する初期ヘッダー。
query_string – 辞書として送信します。あるいは、パスから`query_string`を決定することもできます。
- quart.testing.make_test_scope(type_: str, path: str, method: str, headers: Headers, query_string: bytes, scheme: str, root_path: str, http_version: str, scope_base: dict | None, *, _preserve_context: bool = False) HTTPScope | WebsocketScope | LifespanScope#
- 非同期 quart.testing.no_op_push(path: str, headers: Headers) None#
何も行わないプッシュプロミス送信者。
これは、QuartClientの外でテスト用のRequestインスタンスを作成する場合に最適です。Requestインスタンスはプッシュプロミスをどのように処理するかを知る必要があり、これにより何も行わないという選択肢が与えられます。