# `LangchainPrompt.Adapters.Test`
[🔗](https://github.com/exfoundry/langchain_prompt/blob/v0.1.0/lib/langchain_prompt/adapters/test.ex#L1)

In-process adapter for ExUnit tests.

Records every `chat/2` call by sending a `{:adapter_called, payload}` message
to the calling process (and any `$callers`). Use `LangchainPrompt.TestAssertions`
to assert on these messages.

## On-demand failure

Any message whose `content` is the string `"FAIL_NOW"` causes the adapter to
return `{:error, :adapter_did_fail_on_demand}` without sending any message.

## Shared process override

For async tests that spawn work in separate processes, set:

    Application.put_env(:langchain_prompt, :test_process, self())

The adapter will send the `:adapter_called` message to that PID instead of
walking `$callers`.

## Mock response content

Pass `mock_content: "custom response"` in profile opts to control what the
adapter returns.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
