Home / File/ tutorial001_py39.py — fastapi Source File

tutorial001_py39.py — fastapi Source File

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

File python FastAPI Responses 3 imports 7 functions

Entity Profile

Dependency Diagram

graph LR
  622d9de5_4c86_90e8_e398_18e3859c7d93["tutorial001_py39.py"]
  0dda2280_3359_8460_301c_e98c77e78185["typing"]
  622d9de5_4c86_90e8_e398_18e3859c7d93 --> 0dda2280_3359_8460_301c_e98c77e78185
  534f6e44_61b8_3c38_8b89_6934a6df9802["__init__.py"]
  622d9de5_4c86_90e8_e398_18e3859c7d93 --> 534f6e44_61b8_3c38_8b89_6934a6df9802
  a7c04dee_ee23_5891_b185_47ff6bed036d["testclient.py"]
  622d9de5_4c86_90e8_e398_18e3859c7d93 --> a7c04dee_ee23_5891_b185_47ff6bed036d
  style 622d9de5_4c86_90e8_e398_18e3859c7d93 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

from typing import Union

from fastapi import Depends, FastAPI
from fastapi.testclient import TestClient

app = FastAPI()


async def common_parameters(
    q: Union[str, None] = None, skip: int = 0, limit: int = 100
):
    return {"q": q, "skip": skip, "limit": limit}


@app.get("/items/")
async def read_items(commons: dict = Depends(common_parameters)):
    return {"message": "Hello Items!", "params": commons}


@app.get("/users/")
async def read_users(commons: dict = Depends(common_parameters)):
    return {"message": "Hello Users!", "params": commons}


client = TestClient(app)


async def override_dependency(q: Union[str, None] = None):
    return {"q": q, "skip": 5, "limit": 10}


app.dependency_overrides[common_parameters] = override_dependency


def test_override_in_items():
    response = client.get("/items/")
    assert response.status_code == 200
    assert response.json() == {
        "message": "Hello Items!",
        "params": {"q": None, "skip": 5, "limit": 10},
    }


def test_override_in_items_with_q():
    response = client.get("/items/?q=foo")
    assert response.status_code == 200
    assert response.json() == {
        "message": "Hello Items!",
        "params": {"q": "foo", "skip": 5, "limit": 10},
    }


def test_override_in_items_with_params():
    response = client.get("/items/?q=foo&skip=100&limit=200")
    assert response.status_code == 200
    assert response.json() == {
        "message": "Hello Items!",
        "params": {"q": "foo", "skip": 5, "limit": 10},
    }

Domain

Subdomains

Dependencies

Frequently Asked Questions

What does tutorial001_py39.py do?
tutorial001_py39.py is a source file in the fastapi codebase, written in python. It belongs to the FastAPI domain, Responses subdomain.
What functions are defined in tutorial001_py39.py?
tutorial001_py39.py defines 7 function(s): common_parameters, override_dependency, read_items, read_users, test_override_in_items, test_override_in_items_with_params, test_override_in_items_with_q.
What does tutorial001_py39.py depend on?
tutorial001_py39.py imports 3 module(s): __init__.py, testclient.py, typing.
Where is tutorial001_py39.py in the architecture?
tutorial001_py39.py is located at docs_src/dependency_testing/tutorial001_py39.py (domain: FastAPI, subdomain: Responses, directory: docs_src/dependency_testing).

Analyze Your Own Codebase

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

Try Supermodel Free