Home / Function/ test_fallback_on_primary_failure_async() — langchain Function Reference

test_fallback_on_primary_failure_async() — langchain Function Reference

Architecture documentation for the test_fallback_on_primary_failure_async() function in test_model_fallback.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  e63dad89_5837_7a6a_dbc9_59c3375f14ea["test_fallback_on_primary_failure_async()"]
  c6372e75_e4e3_ed20_8230_4be219762f0f["test_model_fallback.py"]
  e63dad89_5837_7a6a_dbc9_59c3375f14ea -->|defined in| c6372e75_e4e3_ed20_8230_4be219762f0f
  87e5ea8c_f6ab_eab3_8968_7c2261cefbeb["_make_request()"]
  e63dad89_5837_7a6a_dbc9_59c3375f14ea -->|calls| 87e5ea8c_f6ab_eab3_8968_7c2261cefbeb
  b6272a92_ada1_37f0_58c7_437cc1db0ff8["_agenerate()"]
  e63dad89_5837_7a6a_dbc9_59c3375f14ea -->|calls| b6272a92_ada1_37f0_58c7_437cc1db0ff8
  style e63dad89_5837_7a6a_dbc9_59c3375f14ea fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

libs/langchain_v1/tests/unit_tests/agents/middleware/implementations/test_model_fallback.py lines 180–209

async def test_fallback_on_primary_failure_async() -> None:
    """Test async version - fallback model is used when primary fails."""

    class AsyncFailingPrimaryModel(GenericFakeChatModel):
        @override
        async def _agenerate(
            self,
            messages: list[BaseMessage],
            stop: list[str] | None = None,
            run_manager: AsyncCallbackManagerForLLMRun | None = None,
            **kwargs: Any,
        ) -> ChatResult:
            msg = "Primary model failed"
            raise ValueError(msg)

    primary_model = AsyncFailingPrimaryModel(messages=iter([AIMessage(content="should not see")]))
    fallback_model = GenericFakeChatModel(messages=iter([AIMessage(content="fallback response")]))

    middleware = ModelFallbackMiddleware(fallback_model)
    request = _make_request()
    request = request.override(model=primary_model)

    async def mock_handler(req: ModelRequest) -> ModelResponse:
        result = await req.model.ainvoke([])
        return ModelResponse(result=[result])

    response = await middleware.awrap_model_call(request, mock_handler)

    assert isinstance(response, ModelResponse)
    assert response.result[0].content == "fallback response"

Domain

Subdomains

Frequently Asked Questions

What does test_fallback_on_primary_failure_async() do?
test_fallback_on_primary_failure_async() is a function in the langchain codebase, defined in libs/langchain_v1/tests/unit_tests/agents/middleware/implementations/test_model_fallback.py.
Where is test_fallback_on_primary_failure_async() defined?
test_fallback_on_primary_failure_async() is defined in libs/langchain_v1/tests/unit_tests/agents/middleware/implementations/test_model_fallback.py at line 180.
What does test_fallback_on_primary_failure_async() call?
test_fallback_on_primary_failure_async() calls 2 function(s): _agenerate, _make_request.

Analyze Your Own Codebase

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

Try Supermodel Free