Home / Function/ test_with_aliases() — langchain Function Reference

test_with_aliases() — langchain Function Reference

Architecture documentation for the test_with_aliases() function in test_pydantic.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  38e5951a_140a_5dab_589d_a1df295cbc43["test_with_aliases()"]
  f94b56e0_336c_6748_3628_73edd4212b01["test_pydantic.py"]
  38e5951a_140a_5dab_589d_a1df295cbc43 -->|defined in| f94b56e0_336c_6748_3628_73edd4212b01
  edab1b9c_414d_0bfb_72fb_78e0cdb41fef["validator()"]
  38e5951a_140a_5dab_589d_a1df295cbc43 -->|calls| edab1b9c_414d_0bfb_72fb_78e0cdb41fef
  style 38e5951a_140a_5dab_589d_a1df295cbc43 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

libs/core/tests/unit_tests/utils/test_pydantic.py lines 57–87

def test_with_aliases() -> None:
    class Foo(BaseModel):
        x: int = Field(default=1, alias="y")
        z: int

        model_config = ConfigDict(
            populate_by_name=True,
        )

        @pre_init
        def validator(cls, v: dict[str, Any]) -> dict[str, Any]:
            v["z"] = v["x"]
            return v

    # Based on defaults
    # z is required
    foo = Foo()  # type: ignore[call-arg]
    assert foo.x == 1
    assert foo.z == 1

    # Based on field name
    # z is required
    foo = Foo(x=2)  # type: ignore[call-arg]
    assert foo.x == 2
    assert foo.z == 2

    # Based on alias
    # z is required
    foo = Foo(y=2)  # type: ignore[call-arg]
    assert foo.x == 2
    assert foo.z == 2

Domain

Subdomains

Calls

Frequently Asked Questions

What does test_with_aliases() do?
test_with_aliases() is a function in the langchain codebase, defined in libs/core/tests/unit_tests/utils/test_pydantic.py.
Where is test_with_aliases() defined?
test_with_aliases() is defined in libs/core/tests/unit_tests/utils/test_pydantic.py at line 57.
What does test_with_aliases() call?
test_with_aliases() calls 1 function(s): validator.

Analyze Your Own Codebase

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

Try Supermodel Free