From e8c83f100e35f012ec3716d9341aee56fb8ddb1b Mon Sep 17 00:00:00 2001 From: Daniyar Yeralin Date: Wed, 12 Aug 2020 14:37:24 -0400 Subject: [PATCH] Cover mapping shapes with tests --- tests/main.py | 7 ++++++- tests/test_query.py | 2 ++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/tests/main.py b/tests/main.py index d5603d0e6..fdd16f2d2 100644 --- a/tests/main.py +++ b/tests/main.py @@ -1,5 +1,5 @@ import http -from typing import Optional +from typing import Optional, Dict from fastapi import FastAPI, Path, Query @@ -184,6 +184,11 @@ def get_query_param_required(query=Query(...)): return f"foo bar {query}" +@app.get("/query/params") +def get_query_params(queries: Dict[str, int] = Query({})): + return f"foo bar {queries}" + + @app.get("/query/param-required/int") def get_query_param_required_type(query: int = Query(...)): return f"foo bar {query}" diff --git a/tests/test_query.py b/tests/test_query.py index cdbdd1ccd..6c4f4b0e8 100644 --- a/tests/test_query.py +++ b/tests/test_query.py @@ -53,6 +53,8 @@ response_not_valid_int = { ("/query/param-required/int", 422, response_missing), ("/query/param-required/int?query=50", 200, "foo bar 50"), ("/query/param-required/int?query=foo", 422, response_not_valid_int), + ("/query/params?first-query=1&second-query=2", 200, "foo bar {'first-query': 1, " + "'second-query': 2}") ], ) def test_get_path(path, expected_status, expected_response):