Skip to main content

Module flow

Module flow 

Source
Expand description

The flow DAG: how far each expectation is from the start, and what leads to it.

Starting from the Background (and the state each story arranges), it searches breadth first: in each state, take every transition that can apply and see what state it leaves. An expectation’s level is the fewest steps before it applies, and its parents are the expectations that take the last step on those shortest routes. Levels only grow along edges, so the result is a DAG even though the system’s behaviour loops (start, run dry, reset, start again). Each expectation also gets a shortest route, which is a ready-made test for it.

Structs§

Flow
Limits
Route
A way to reach an expectation: arrange start, then take each transition in steps.

Enums§

Node

Functions§

explore
Search from each root state (each section’s start, and each story’s arranged start), taking only the expectations in scope for the root’s section.
in_scope
The expectations that apply in a section: everything under the same top-level section, so an app section can use the rest of the app’s expectations but not the API’s. In the root, everything.
route_to
A short chain of transitions from from to a state where goal certainly holds, if one is within limits. How a section’s setup is reached from its parent’s.