Home / File/ test_invalid_sequence_param.py — fastapi Source File

test_invalid_sequence_param.py — fastapi Source File

Architecture documentation for test_invalid_sequence_param.py, a python file in the fastapi codebase. 4 imports, 0 dependents.

File python FastAPI Routing 4 imports 4 functions 1 classes

Entity Profile

Dependency Diagram

graph LR
  52e6a25e_03bb_f423_2a64_e9ce91326436["test_invalid_sequence_param.py"]
  0dda2280_3359_8460_301c_e98c77e78185["typing"]
  52e6a25e_03bb_f423_2a64_e9ce91326436 --> 0dda2280_3359_8460_301c_e98c77e78185
  5befe8bf_65d1_d058_6b78_4a597a8488e9["pytest"]
  52e6a25e_03bb_f423_2a64_e9ce91326436 --> 5befe8bf_65d1_d058_6b78_4a597a8488e9
  534f6e44_61b8_3c38_8b89_6934a6df9802["__init__.py"]
  52e6a25e_03bb_f423_2a64_e9ce91326436 --> 534f6e44_61b8_3c38_8b89_6934a6df9802
  6913fbd4_39df_d14b_44bb_522e99b65b90["pydantic"]
  52e6a25e_03bb_f423_2a64_e9ce91326436 --> 6913fbd4_39df_d14b_44bb_522e99b65b90
  style 52e6a25e_03bb_f423_2a64_e9ce91326436 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

from typing import Optional

import pytest
from fastapi import FastAPI, Query
from pydantic import BaseModel


def test_invalid_sequence():
    with pytest.raises(
        AssertionError,
        match="Query parameter 'q' must be one of the supported types",
    ):
        app = FastAPI()

        class Item(BaseModel):
            title: str

        @app.get("/items/")
        def read_items(q: list[Item] = Query(default=None)):
            pass  # pragma: no cover


def test_invalid_tuple():
    with pytest.raises(
        AssertionError,
        match="Query parameter 'q' must be one of the supported types",
    ):
        app = FastAPI()

        class Item(BaseModel):
            title: str

        @app.get("/items/")
        def read_items(q: tuple[Item, Item] = Query(default=None)):
            pass  # pragma: no cover


def test_invalid_dict():
    with pytest.raises(
        AssertionError,
        match="Query parameter 'q' must be one of the supported types",
    ):
        app = FastAPI()

        class Item(BaseModel):
            title: str

        @app.get("/items/")
        def read_items(q: dict[str, Item] = Query(default=None)):
            pass  # pragma: no cover


def test_invalid_simple_dict():
    with pytest.raises(
        AssertionError,
        match="Query parameter 'q' must be one of the supported types",
    ):
        app = FastAPI()

        class Item(BaseModel):
            title: str

        @app.get("/items/")
        def read_items(q: Optional[dict] = Query(default=None)):
            pass  # pragma: no cover

Domain

Subdomains

Classes

Dependencies

Frequently Asked Questions

What does test_invalid_sequence_param.py do?
test_invalid_sequence_param.py is a source file in the fastapi codebase, written in python. It belongs to the FastAPI domain, Routing subdomain.
What functions are defined in test_invalid_sequence_param.py?
test_invalid_sequence_param.py defines 4 function(s): test_invalid_dict, test_invalid_sequence, test_invalid_simple_dict, test_invalid_tuple.
What does test_invalid_sequence_param.py depend on?
test_invalid_sequence_param.py imports 4 module(s): __init__.py, pydantic, pytest, typing.
Where is test_invalid_sequence_param.py in the architecture?
test_invalid_sequence_param.py is located at tests/test_invalid_sequence_param.py (domain: FastAPI, subdomain: Routing, directory: tests).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free