Skip to main content

Module layout

Module layout 

Source
Expand description

The project’s test layout, detected by code: the runners of the checkout, each runner’s collection rule as configured, where tests live today, the naming habit, and where speccoder puts a task’s acceptance file. A fact handed to the implementer and every test author, never a judge input; undeterminable parts are listed as unknown, never guessed. Same checkout, same bytes.

Structs§

Command
A command the project declares: what a person runs, and the words a test that runs it names (the command, -m its module, its binary): an import of the module behind it runs no command.
Location
Where tests live today.
RunnerLayout
One runner’s layout.
TestLayout
The checkout’s test layout.

Constants§

STACKS
The manifests a stack is planned in, by the language each says.

Functions§

commands
The commands root declares: [project.scripts] and a package’s __main__.py (Python), a Cargo binary, a package.json bin.
detect
Detects the layout of the checkout at root; check_argvs are the checks’ commands (they name the runners).
stack_text
The checkout’s stack, as planning is told it: its manifests and the checks that test it — so a plan is made in it, never invented. No manifest: None, the plan chooses.
task_via_command
Whether a task’s tests run the project’s command: its title, or a scenario it cites, is about a command line.
text_at
The layout’s text for the project at root, its checks read from its speccoder.toml.
via_command
Whether a story’s Independent Test (its line in the story’s text) or a scenario’s When (what the person does) is about a command line, by whole words: the interface is then the project’s command, never an internal module.