nimgent/testing
This page is generated from the module’s exported API and ## documentation comments.
Deterministic provider for application tests.
FakeProvider
Section titled “FakeProvider”Deterministic provider that returns scripted responses and records requests.
FakeProvider = ref object of Provider responses*: seq[ProviderResponse] requests*: seq[ProviderRequest]Procedures
Section titled “Procedures”textResponse
Section titled “textResponse”Create a simple provider response containing one text block.
proc textResponse(value: string; finishReason = frStop; usage = Usage()): ProviderResponse {. raises: [], tags: [], forbids: [].}Returns: ProviderResponse.
Arguments
Section titled “Arguments”| Name | Type | Default |
|---|---|---|
value |
string |
|
finishReason |
inferred |
frStop |
usage |
inferred |
Usage() |
scriptedModel
Section titled “scriptedModel”Create a model backed by a deterministic sequence of responses.
proc scriptedModel(responses: seq[ProviderResponse]; id = "test"): LanguageModel {. raises: [ValueError, ProviderError], tags: [], forbids: [].}Returns: LanguageModel.
Arguments
Section titled “Arguments”| Name | Type | Default |
|---|---|---|
responses |
seq[ProviderResponse] |
|
id |
inferred |
"test" |
Methods
Section titled “Methods”generateAsync
Section titled “generateAsync”Return the next scripted response and record the request.
method generateAsync(provider: FakeProvider; request: ProviderRequest): Future[ ProviderResponse] {.stackTrace: false, raises: [Exception, ValueError], tags: [RootEffect], forbids: [].}Returns: Future[ProviderResponse].
Arguments
Section titled “Arguments”| Name | Type | Default |
|---|---|---|
provider |
FakeProvider |
|
request |
ProviderRequest |