test_dynamic_prompt_uses_state() — langchain Function Reference
Architecture documentation for the test_dynamic_prompt_uses_state() function in test_decorators.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD e8f4a99f_1549_4a8e_7125_b8a54a0c26c2["test_dynamic_prompt_uses_state()"] 85a104a3_11cf_6539_d0c0_ba69a17a41d4["test_decorators.py"] e8f4a99f_1549_4a8e_7125_b8a54a0c26c2 -->|defined in| 85a104a3_11cf_6539_d0c0_ba69a17a41d4 style e8f4a99f_1549_4a8e_7125_b8a54a0c26c2 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
libs/langchain_v1/tests/unit_tests/agents/middleware/core/test_decorators.py lines 658–683
def test_dynamic_prompt_uses_state() -> None:
"""Test that dynamic_prompt can use state information."""
@dynamic_prompt
def custom_prompt(request: ModelRequest) -> str:
msg_count = len(request.state["messages"])
return f"Prompt with {msg_count} messages"
# Verify it uses state correctly
original_request = ModelRequest(
model=FakeToolCallingModel(),
system_prompt="Original",
messages=[HumanMessage("Hello")],
tool_choice=None,
tools=[],
response_format=None,
state={"messages": [HumanMessage("Hello"), HumanMessage("World")]},
runtime=None,
)
def mock_handler(req: ModelRequest) -> ModelResponse:
return ModelResponse(result=[AIMessage(content=req.system_prompt)])
result = custom_prompt.wrap_model_call(original_request, mock_handler)
assert isinstance(result, ModelResponse)
assert result.result[0].content == "Prompt with 2 messages"
Domain
Subdomains
Source
Frequently Asked Questions
What does test_dynamic_prompt_uses_state() do?
test_dynamic_prompt_uses_state() is a function in the langchain codebase, defined in libs/langchain_v1/tests/unit_tests/agents/middleware/core/test_decorators.py.
Where is test_dynamic_prompt_uses_state() defined?
test_dynamic_prompt_uses_state() is defined in libs/langchain_v1/tests/unit_tests/agents/middleware/core/test_decorators.py at line 658.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free