Files
cleveragents-core/features/stream_router_agent_tool_coverage.feature
T
brent.edwards 17fe46d925 test(behave): fix behave tests
There had been over 100 behave tests failing. There should be none failing now.
2026-02-12 04:47:02 +00:00

77 lines
3.4 KiB
Gherkin

Feature: Stream Router agent and tool coverage
As a developer
I want Behave coverage for SimpleToolAgent and SimpleLLMAgent
So that uncovered agent branches are exercised
Scenario: SimpleToolAgent returns content when tool code is missing
Given a SimpleToolAgent with a tool missing code
When I process "payload" through the SimpleToolAgent
Then the SimpleToolAgent result should be "payload"
Scenario: SimpleToolAgent returns empty string when tool execution fails
Given a SimpleToolAgent with invalid tool code
When I process "payload" through the SimpleToolAgent
Then the SimpleToolAgent result should be empty
Scenario: SimpleToolAgent process_message_sync runs tool code
Given a SimpleToolAgent with working tool code
When I call process_message_sync with "payload"
Then the SimpleToolAgent result should be "ok:payload"
# TODO: Uncomment when step definitions are implemented
# Scenario: SimpleLLMAgent returns empty prompt for blank template
# Given a SimpleLLMAgent for prompt rendering
# When I render the template "<empty>" with context:
# | key | value |
# | name | Ada |
# Then the rendered prompt should be "<empty>"
#
# TODO: Uncomment when step definitions are implemented
# Scenario: SimpleLLMAgent returns raw template when environment is missing
# Given a SimpleLLMAgent for prompt rendering
# And the SimpleLLMAgent template environment is "none"
# When I render the template "Hello" with context:
# | key | value |
# | name | Ada |
# Then the rendered prompt should be "Hello"
#
# TODO: Uncomment when step definitions are implemented
# Scenario: SimpleLLMAgent renders template when environment succeeds
# Given a SimpleLLMAgent for prompt rendering
# And the SimpleLLMAgent template environment is "working"
# When I render the template "Hello {{ name }}" with context:
# | key | value |
# | name | Ada |
# Then the rendered prompt should be "Hello Ada"
#
# TODO: Uncomment when step definitions are implemented
# Scenario: SimpleLLMAgent falls back to template on render failure
# Given a SimpleLLMAgent for prompt rendering
# And the SimpleLLMAgent template environment is "failing"
# When I render the template "Hello {{ name }}" with context:
# | key | value |
# | name | Ada |
# Then the rendered prompt should be "Hello {{ name }}"
Scenario: SimpleLLMAgent resolves LLM with configured kwargs and caching
Given a SimpleLLMAgent with provider config
And a stub provider registry is installed
When I resolve the LLM twice
Then the registry should be called once with the configured kwargs
And the resolved LLM should be cached
Scenario: SimpleLLMAgent raises when LangChain messages are unavailable
Given a SimpleLLMAgent with provider config
And a stub provider registry is installed
And LangChain message classes are unavailable
When I process "ping" through the LLM agent
Then I should receive a stream routing error about missing messages
Scenario: SimpleLLMAgent process_message_sync returns LLM content
Given a SimpleLLMAgent with system prompt and provider config
And a stub provider registry is installed
And LangChain message stubs are installed
When I process 123 through the LLM agent via process_message_sync
Then the LLM should receive system and human messages
And the LLM agent result should be "llm-output"