forked from HAL9000/cleveragents-core
8ea00f5185
Co-authored-by: Jeffrey Phillips Freeman <the@jeffreyfreeman.me> Co-committed-by: Jeffrey Phillips Freeman <the@jeffreyfreeman.me>
97 lines
4.6 KiB
Gherkin
97 lines
4.6 KiB
Gherkin
# @tdd_issue @tdd_issue_2592 @tdd_bug @tdd_bug_2592 @mock_only @tdd_expected_fail @tdd_issue_4178 @skip
|
|
@skip
|
|
Feature: TDD Issue #2592 — ToolRunner.execute() 6-level execution environment precedence chain
|
|
As the tool execution engine
|
|
I want ToolRunner.execute() to apply the correct 6-level precedence chain
|
|
So that override/fallback priority semantics are honoured at tool execution time
|
|
|
|
# ── Unit tests: 6-level precedence chain via ToolRunner.execute() ──
|
|
|
|
# @tdd_issue @tdd_issue_4290 @tdd_expected_fail @skip
|
|
@skip
|
|
Scenario: Plan override wins over devcontainer (Level 1 beats Level 3)
|
|
Given a tool runner with a devcontainer-instance linked resource
|
|
When I execute the tool with plan_env "host" and plan_priority "override"
|
|
Then the resolved execution environment should be "host"
|
|
|
|
# @tdd_issue @tdd_issue_4290 @tdd_expected_fail @skip
|
|
@skip
|
|
Scenario: Project override wins over devcontainer (Level 2 beats Level 3)
|
|
Given a tool runner with a devcontainer-instance linked resource
|
|
When I execute the tool with project_env "host" and project_priority "override"
|
|
Then the resolved execution environment should be "host"
|
|
|
|
# @tdd_issue @tdd_issue_4290 @tdd_expected_fail @skip
|
|
@skip
|
|
Scenario: Devcontainer wins over plan fallback (Level 3 beats Level 4)
|
|
Given a tool runner with a devcontainer-instance linked resource
|
|
When I execute the tool with plan_env "host" and plan_priority "fallback"
|
|
Then the resolved execution environment should be "container"
|
|
|
|
# @tdd_issue @tdd_issue_4290 @tdd_expected_fail @skip
|
|
@skip
|
|
Scenario: Devcontainer wins over project fallback (Level 3 beats Level 5)
|
|
Given a tool runner with a devcontainer-instance linked resource
|
|
When I execute the tool with project_env "host" and project_priority "fallback"
|
|
Then the resolved execution environment should be "container"
|
|
|
|
# @tdd_issue @tdd_issue_4290 @tdd_expected_fail @skip
|
|
@skip
|
|
Scenario: Plan fallback used when no devcontainer (Level 4)
|
|
Given a tool runner with no linked resources
|
|
When I execute the tool with plan_env "container" and plan_priority "fallback"
|
|
Then the resolved execution environment should be "container"
|
|
|
|
# @tdd_issue @tdd_issue_4290 @tdd_expected_fail @skip
|
|
@skip
|
|
Scenario: Project fallback used when no devcontainer and no plan env (Level 5)
|
|
Given a tool runner with no linked resources
|
|
When I execute the tool with project_env "container" and project_priority "fallback"
|
|
Then the resolved execution environment should be "container"
|
|
|
|
# @tdd_issue @tdd_issue_4290 @tdd_expected_fail @skip
|
|
@skip
|
|
Scenario: Host default when nothing configured (Level 6)
|
|
Given a tool runner with no linked resources
|
|
When I execute the tool with no environment configuration
|
|
Then the resolved execution environment should be "host"
|
|
|
|
# @tdd_issue @tdd_issue_4290 @tdd_expected_fail @skip
|
|
@skip
|
|
Scenario: Plan override beats project override (Level 1 beats Level 2)
|
|
Given a tool runner with no linked resources
|
|
When I execute the tool with plan_env "host" plan_priority "override" project_env "container" project_priority "override"
|
|
Then the resolved execution environment should be "host"
|
|
|
|
# ── Integration tests: override vs fallback scenarios ──
|
|
|
|
# @tdd_issue @tdd_issue_4290 @tdd_expected_fail @skip
|
|
@skip
|
|
Scenario: Override bypasses devcontainer auto-detection
|
|
Given a tool runner with a devcontainer-instance linked resource
|
|
When I execute the tool with plan_env "host" and plan_priority "override"
|
|
Then the resolved execution environment should be "host"
|
|
And the devcontainer was not used
|
|
|
|
# @tdd_issue @tdd_issue_4290 @tdd_expected_fail @skip
|
|
@skip
|
|
Scenario: Fallback defers to devcontainer when present
|
|
Given a tool runner with a devcontainer-instance linked resource
|
|
When I execute the tool with plan_env "host" and plan_priority "fallback"
|
|
Then the resolved execution environment should be "container"
|
|
And the devcontainer was used
|
|
|
|
# @tdd_issue @tdd_issue_4290 @tdd_expected_fail @skip
|
|
@skip
|
|
Scenario: Fallback uses configured env when no devcontainer present
|
|
Given a tool runner with no linked resources
|
|
When I execute the tool with plan_env "host" and plan_priority "fallback"
|
|
Then the resolved execution environment should be "host"
|
|
|
|
# @tdd_issue @tdd_issue_4290 @tdd_expected_fail @skip
|
|
@skip
|
|
Scenario: Default priority is fallback — devcontainer wins over unconfigured plan env
|
|
Given a tool runner with a devcontainer-instance linked resource
|
|
When I execute the tool with plan_env "host" and no explicit priority
|
|
Then the resolved execution environment should be "container"
|