Matchers reference
Every row of tflw's closed matcher set — generated from
packages/lang/src/spec-data.ts,
the same manifest that regenerates SPEC.md §6.2.
not negates any of them, and is is an optional copula that may sit on either side of it — so
is not visible, not is visible, is visible and not visible all parse. Every matcher operand
below takes the full value grammar, not just literals: has count {expected} works exactly like
equals {expected}. See Assertions in depth for the full walkthrough.
equals
Section titled “equals”expect status equals 201contains
Section titled “contains”expect body.msg contains "created"matches "<regex>"
Section titled “matches "<regex>"”expect header "content-type" matches "json"matches subset {...}
Section titled “matches subset {...}”expect body matches subset { type: "about:blank", status: 422 }matches schema "Name" from "src"
Section titled “matches schema "Name" from "src"”expect body matches schema "ProductResponseDto" from "/openapi.json"matches file "<path>"
Section titled “matches file "<path>"”expect body bytes matches file "expected-receipt.pdf"is greater than / is less than
Section titled “is greater than / is less than”expect body.total is less than 100has count <value>
Section titled “has count <value>”expect body.items has count 3has count at least <value>
Section titled “has count at least <value>”expect body.items has count at least 1has count at most <value>
Section titled “has count at most <value>”expect body.items has count at most 50is empty / is not empty
Section titled “is empty / is not empty”expect body.errors is emptyhas value
Section titled “has value”expect field "Email" has value "a@b.c"is visible/hidden/enabled/disabled/checked
Section titled “is visible/hidden/enabled/disabled/checked”expect button "Pay" is enabledconnects
Section titled “connects”expect request connectsfails / fails matching "<regex>"
Section titled “fails / fails matching "<regex>"”expect request fails matching "certificate"was made
Section titled “was made”expect request to "/api/orders" was madehas no [minor/moderate/serious/critical] a11y violations
Section titled “has no [minor/moderate/serious/critical] a11y violations”expect page has no critical a11y violationshas no [minor/moderate/serious/critical] security violations
Section titled “has no [minor/moderate/serious/critical] security violations”expect response has no serious security violationshas no [minor/moderate/serious/critical] authorization violations
Section titled “has no [minor/moderate/serious/critical] authorization violations”expect response has no authorization violationshas no [minor/moderate/serious/critical] input handling violations
Section titled “has no [minor/moderate/serious/critical] input handling violations”expect response has no input handling violationsmatches snapshot "<name>" [mask <locator>]*
Section titled “matches snapshot "<name>" [mask <locator>]*”expect page matches snapshot "checkout-page" mask css ".timestamp"