Skip to main content

Interface: FormHarness

Defined in: packages/testing/src/harness.ts:55

Properties​

clock​

readonly clock: FakeClock;

Defined in: packages/testing/src/harness.ts:57


engine​

readonly engine: FormEngine;

Defined in: packages/testing/src/harness.ts:56


storage​

readonly storage:
| StorageAdapter
| undefined;

Defined in: packages/testing/src/harness.ts:58


submissionId​

readonly submissionId: string;

Defined in: packages/testing/src/harness.ts:59

Methods​

dispose()​

dispose(): void;

Defined in: packages/testing/src/harness.ts:109

Returns​

void


errors()​

errors(name?): FieldIssue[];

Defined in: packages/testing/src/harness.ts:71

Blocking errors for one field, or for the whole form when omitted.

Parameters​

ParameterType
name?string

Returns​

FieldIssue[]


expectError()​

expectError(name, match?): FieldIssue;

Defined in: packages/testing/src/harness.ts:77

Assert a field currently has a blocking error, and return it. Throws with the field's actual state when it does not — the failure message is the reason to use this over a bare expect.

Parameters​

ParameterType
namestring
match?string | RegExp

Returns​

FieldIssue


expectNoError()​

expectNoError(name): FormHarness;

Defined in: packages/testing/src/harness.ts:79

Assert a field has no blocking error. Throws listing the errors if it does.

Parameters​

ParameterType
namestring

Returns​

FormHarness


field()​

field(name): FieldState;

Defined in: packages/testing/src/harness.ts:66

Full field state — relevance, required, choices, errors.

Parameters​

ParameterType
namestring

Returns​

FieldState


fill()​

fill(name, value): FormHarness;

Defined in: packages/testing/src/harness.ts:62

Set a value the way a user would, then flush so reads are immediate.

Parameters​

ParameterType
namestring
valueunknown

Returns​

FormHarness


finalize()​

finalize(): Result<Submission>;

Defined in: packages/testing/src/harness.ts:93

Returns​

Result<Submission>


goTo()​

goTo(pageId): FormHarness;

Defined in: packages/testing/src/harness.ts:90

Jump to a page regardless of validation — for setting up a test state.

Parameters​

ParameterType
pageIdstring

Returns​

FormHarness


kill()​

kill(): Promise<void>;

Defined in: packages/testing/src/harness.ts:102

Simulate process death: dispose the engine and drop every in-memory reference. Anything not already in storage is gone, which is the point.

Returns​

Promise<void>


next()​

next(): boolean;

Defined in: packages/testing/src/harness.ts:86

Advance if the current page validates. Returns false at the end, or when blocked.

Returns​

boolean


page()​

page(): string;

Defined in: packages/testing/src/harness.ts:82

Id of the page the enumerator is on.

Returns​

string


pages()​

pages(): string[];

Defined in: packages/testing/src/harness.ts:84

Relevant page ids, in order.

Returns​

string[]


prev()​

prev(): boolean;

Defined in: packages/testing/src/harness.ts:88

Go back. Returns false on the first page.

Returns​

boolean


restart()​

restart(): Promise<FormHarness>;

Defined in: packages/testing/src/harness.ts:107

Rebuild from storage after kill(). Returns a fresh harness over the same submission id; the old one stays dead.

Returns​

Promise<FormHarness>


save()​

save(): Promise<void>;

Defined in: packages/testing/src/harness.ts:97

Persist the current draft. No-op without storage.

Returns​

Promise<void>


submission()​

submission(): Submission;

Defined in: packages/testing/src/harness.ts:94

Returns​

Submission


validate()​

validate(): ValidationResult;

Defined in: packages/testing/src/harness.ts:92

Returns​

ValidationResult


value()​

value(name): unknown;

Defined in: packages/testing/src/harness.ts:64

Current value of a field.

Parameters​

ParameterType
namestring

Returns​

unknown


visible()​

visible(name): boolean;

Defined in: packages/testing/src/harness.ts:68

Is the field currently shown to the enumerator?

Parameters​

ParameterType
namestring

Returns​

boolean