DeepEvalEx.LLM.Adapters.Mock (DeepEvalEx v0.1.0)
View SourceMock LLM adapter for testing.
This adapter allows you to provide pre-configured responses for testing without making actual API calls.
Usage in Tests
# Configure mock responses
DeepEvalEx.LLM.Adapters.Mock.set_response("What is 2+2?", "4")
# Or use pattern matching
DeepEvalEx.LLM.Adapters.Mock.set_response(~r/capital.*France/, "Paris")
# Use the mock adapter
{:ok, result} = DeepEvalEx.evaluate(test_case, [metric],
adapter: :mock
)With Structured Outputs
DeepEvalEx.LLM.Adapters.Mock.set_schema_response(
~r/extract claims/,
%{"claims" => ["claim 1", "claim 2"]}
)
Summary
Functions
Clears recorded prompts.
Clears all configured mock responses.
Records all prompts sent to this adapter (for assertions).
Sets a mock response for a given prompt pattern.
Sets a mock response for structured output requests.
Functions
@spec clear_recorded_prompts() :: :ok
Clears recorded prompts.
@spec clear_responses() :: :ok
Clears all configured mock responses.
@spec get_recorded_prompts() :: [String.t()]
Records all prompts sent to this adapter (for assertions).
Sets a mock response for a given prompt pattern.
Parameters
pattern- String (exact match) or Regex (pattern match)response- The response to return
Sets a mock response for structured output requests.