Home / Function/ test_tool_args_schema_falsy_defaults() — langchain Function Reference

test_tool_args_schema_falsy_defaults() — langchain Function Reference

Architecture documentation for the test_tool_args_schema_falsy_defaults() function in test_tools.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  086f439c_d076_6e19_7341_a1df6b8313b0["test_tool_args_schema_falsy_defaults()"]
  8e7836ae_e72c_f670_72a5_4ca6d46e3555["test_tools.py"]
  086f439c_d076_6e19_7341_a1df6b8313b0 -->|defined in| 8e7836ae_e72c_f670_72a5_4ca6d46e3555
  style 086f439c_d076_6e19_7341_a1df6b8313b0 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

libs/core/tests/unit_tests/test_tools.py lines 3608–3633

def test_tool_args_schema_falsy_defaults() -> None:
    """Test falsy default values (`0`, `False`, empty string) are handled correctly."""

    class ConfigArgs(BaseModel):
        """Schema for config tool arguments."""

        name: str = Field(..., description="Config name")
        enabled: bool = Field(default=False, description="Whether enabled")
        count: int = Field(default=0, description="Initial count")
        prefix: str = Field(default="", description="Optional prefix")

    @tool("config_tool", args_schema=ConfigArgs)
    def config_tool(name: str, *, enabled: bool, count: int, prefix: str) -> str:
        """Configure settings.

        Args:
            name: Config name.
            enabled: Whether enabled.
            count: Initial count.
            prefix: Optional prefix.
        """
        return f"name={name}, enabled={enabled}, count={count}, prefix={prefix!r}"

    # Invoke with only required argument - falsy defaults should be applied
    result = config_tool.invoke({"name": "test"})
    assert result == "name=test, enabled=False, count=0, prefix=''"

Domain

Subdomains

Frequently Asked Questions

What does test_tool_args_schema_falsy_defaults() do?
test_tool_args_schema_falsy_defaults() is a function in the langchain codebase, defined in libs/core/tests/unit_tests/test_tools.py.
Where is test_tool_args_schema_falsy_defaults() defined?
test_tool_args_schema_falsy_defaults() is defined in libs/core/tests/unit_tests/test_tools.py at line 3608.

Analyze Your Own Codebase

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

Try Supermodel Free