Namespace Kuestenlogik.Bowire.Flows.Expectations
Classes
- FlowExpectation
Declarative assertion attached to a Flow step. Each expectation pairs a Kind (what to look at), an Operator (how to compare), an optional Target selector (header name, JSON path, …), and an Expected right-hand-side value. Lives as a public type so the v2.2 CI runner (T2:
bowire test <flow>) can deserialise the same shape the workbench writes.
- FlowExpectationEvaluator
Pure-function evaluator: given a FlowExpectation and a FlowRequestEnvelope, return a FlowExpectationResult. No I/O, no global state — so the v2.2 CLI runner (T2) and the in-process flow runner share the same predicate semantics.
- FlowExpectationResult
Outcome of evaluating a single FlowExpectation against a FlowRequestEnvelope. Carries enough detail for the UI result viewer + T2's JUnit XML failure messages to be useful without a re-evaluation pass.
- FlowExpectationRollup
Per-flow rollup. Aggregates step results into the top-level summary the v2.2 CLI runner prints + ships into JUnit XML.
- FlowRequestEnvelope
Captured result of one flow-step's request invocation — the input surface every FlowExpectation evaluates against. Kept transport-agnostic on purpose: the in-browser runner builds it from fetch/XHR, the CLI runner (T2) builds it from
IBowireProtocolinvocations, and the evaluator stays the same in both worlds.
- FlowSnapshotComparer
Pure-function snapshot comparison. Lives beside FlowExpectationEvaluator so the CLI runner and the workbench's approve-snapshot surface share one diff implementation.
- FlowSnapshotConfig
Snapshot ("golden baseline") configuration on a Flow step — #171. First run captures the response body into a snapshot file; subsequent runs diff actual against the baseline and fail on drift. Complements the structural FlowExpectation checks: expectations say "these fields must hold", the snapshot says "nothing ELSE changed either".
- FlowStepExpectationResult
Per-step rollup: all expectation results for one Flow step, plus pass/fail counts that callers can read without iterating.
Enums
- FlowExpectationKind
What slice of the request envelope an expectation reads.
- FlowExpectationOperator
How an expectation compares actual to expected.
- FlowSnapshotMode
How strictly a snapshot baseline is compared.