Files
cleveragents-core/features/reactive_route_coverage_boost.feature
freemo a808c395f9
CI / benchmark-publish (pull_request) Has been skipped
CI / lint (pull_request) Successful in 15s
CI / build (pull_request) Successful in 15s
CI / quality (pull_request) Successful in 17s
CI / typecheck (pull_request) Successful in 35s
CI / security (pull_request) Successful in 50s
CI / unit_tests (pull_request) Successful in 2m46s
CI / integration_tests (pull_request) Successful in 3m16s
CI / docker (pull_request) Successful in 40s
CI / coverage (pull_request) Successful in 5m6s
CI / lint (push) Successful in 13s
CI / quality (push) Successful in 16s
CI / build (push) Successful in 18s
CI / security (push) Successful in 32s
CI / typecheck (push) Successful in 35s
CI / benchmark-regression (push) Has been skipped
CI / unit_tests (push) Successful in 2m52s
CI / integration_tests (push) Successful in 3m8s
CI / docker (push) Successful in 39s
CI / coverage (push) Successful in 5m53s
CI / benchmark-publish (push) Successful in 16m55s
CI / benchmark-regression (pull_request) Successful in 33m0s
test(coverage): add Behave BDD tests to improve unit test coverage across 53 source modules
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
2026-03-09 13:01:58 -04:00

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"