Test settings
A test needs no settings. Without them, its clock is fixed at
2000-01-01T00:00:00Z, never the real time; each configuration field
has its test: or default: value from config.jadpo; each call to a
provider answers with its fake's generated default; and each feature flag
has its default:.
To change any of these, write a name: value setting at the top of the
test's body, before its first statement. There are four, and all are
optional.
clock:
The instant the test starts at, written out: "2026-01-15T12:00:00Z"
(Controlling time).
config:
Configuration values that differ from the test values in config.jadpo
(Configuration in tests).
fakes:
The responses each integration operation gives, in order (Fakes for integrations).
flags:
The value each feature flag it names has for every caller in the test,
flags: { new_checkout: true }, written as the flag's default: is: true
or false, or the enum's variant
(What the compiler checks).
A flag it doesn't name has its default:, never a value an environment
holds.
Everything in the test itself
Settings are written once per test, so a reader sees everything that
shapes the result in the test itself; one written twice is
semantic.test_setting_duplicate. Shared data isn't a setting: it
comes from fixtures (Shared test data: fixtures).
Markdown for agents: /docs/test-settings.md.Built from Jadpo main at aee2e8f.