forked from cleveragents/cleveragents-core
a808c395f9
Add 53 new .feature files and corresponding step definition files targeting uncovered lines identified in build/coverage.xml. Fix AmbiguousStep conflicts in 7 pre-existing step files by disambiguating step text. New tests cover: ACP clients/facade, actor CLI/config, application container, ACMS service/strategies, async worker, automation profile CLI, autonomy guardrail, bridge, change model, config CLI/service, context service, cross-plan correction, database models, decision service, decomposition clustering/service, discovery handler, langchain chat provider, langgraph nodes, materializers, multi-project service, plan apply/CLI/lifecycle/model/ preflight/resume/service, PostgreSQL analyzer, project CLI/context CLI, provider registry, reactive application/route, repositories, resolver handler, resource registry service, resume model, retry patterns, sandbox protocol, server CLI, skill CLI/service, skills registry, subplan execution/service, system CLI, UKO loader, UoW, and YAML template engine. Closes #645
40 lines
2.1 KiB
Gherkin
40 lines
2.1 KiB
Gherkin
Feature: Reactive route module coverage boost
|
|
Cover uncovered lines in src/cleveragents/reactive/route.py:
|
|
lines 90-99 (to_stream_config success path),
|
|
line 113 (MESSAGE_ROUTER rules propagation in to_graph_config),
|
|
line 177 (from_graph_config fallback when node type has no .value).
|
|
|
|
Background:
|
|
Given the reactive route coverage module is loaded
|
|
|
|
Scenario: Convert a STREAM RouteConfig to StreamConfig successfully
|
|
Given I have a stream RouteConfig with full configuration
|
|
When I convert the stream RouteConfig to a StreamConfig
|
|
Then the StreamConfig should have the correct name
|
|
And the StreamConfig should have the correct stream type
|
|
And the StreamConfig should preserve all operator definitions
|
|
And the StreamConfig should preserve subscriptions and publications
|
|
And the StreamConfig should preserve agents and buffer size
|
|
And the StreamConfig should preserve initial value and template config
|
|
|
|
Scenario: Convert a STREAM RouteConfig with defaults to StreamConfig
|
|
Given I have a minimal stream RouteConfig with no explicit stream type
|
|
When I convert the stream RouteConfig to a StreamConfig
|
|
Then the StreamConfig should have the correct name
|
|
And the StreamConfig stream type should be COLD
|
|
|
|
Scenario: to_graph_config propagates rules for MESSAGE_ROUTER nodes
|
|
Given I have a graph RouteConfig with a MESSAGE_ROUTER node containing top-level rules
|
|
When I convert the graph RouteConfig to a GraphConfig
|
|
Then the resulting MESSAGE_ROUTER node metadata should contain the rules
|
|
|
|
Scenario: from_graph_config falls back to function when node type is None
|
|
Given I have a GraphConfig with a node whose type attribute is None
|
|
When I create a RouteConfig from that GraphConfig
|
|
Then the node type in the resulting RouteConfig should be "function"
|
|
|
|
Scenario: from_graph_config falls back when node type has no value attribute
|
|
Given I have a GraphConfig with a node whose type is a plain string
|
|
When I create a RouteConfig from that GraphConfig
|
|
Then the node type in the resulting RouteConfig should be "custom_type"
|