(self)
| 810 | assert result.output["model"] == "opus-4" |
| 811 | |
| 812 | def test_options_merge(self): |
| 813 | from unittest.mock import patch |
| 814 | from specify_cli.workflows.steps.command import CommandStep |
| 815 | from specify_cli.workflows.base import StepContext |
| 816 | |
| 817 | step = CommandStep() |
| 818 | ctx = StepContext(default_options={"max-tokens": 8000}) |
| 819 | config = { |
| 820 | "id": "test", |
| 821 | "command": "speckit.plan", |
| 822 | "options": {"thinking-budget": 32768}, |
| 823 | "input": {}, |
| 824 | } |
| 825 | with patch("specify_cli.workflows.steps.command.shutil.which", return_value=None): |
| 826 | result = step.execute(config, ctx) |
| 827 | assert result.output["options"]["max-tokens"] == 8000 |
| 828 | assert result.output["options"]["thinking-budget"] == 32768 |
| 829 | |
| 830 | def test_dispatch_not_attempted_without_cli(self): |
| 831 | """When the CLI tool is not installed, step should fail.""" |
nothing calls this directly
no test coverage detected