Skip to content

fix: make PaySchedule create/edit tests more robust#1547

Merged
serikjensen merged 4 commits intomainfrom
test-failure
Apr 15, 2026
Merged

fix: make PaySchedule create/edit tests more robust#1547
serikjensen merged 4 commits intomainfrom
test-failure

Conversation

@serikjensen
Copy link
Copy Markdown
Member

Summary

  • Fix intermittently failing PaySchedule test ("allows creating a new pay schedule") in CI
  • Instead of asserting on the onEvent mock inside waitFor (which races against the full async mutation chain and can exceed the default 1000ms timeout), wait for an observable DOM change (the list mode reappearing after successful form submission), then assert on onEvent synchronously
  • Applied the same fix to the edit test for consistency

Test plan

  • npm run test -- --run src/components/Company/PaySchedule/PaySchedule.test.tsx — all 14 tests pass

Made with Cursor

Implements a new useHomeAddressForm hook following the established
unstable hooks pattern. Supports create and update modes with
address fields (street1, street2, city, state, zip), courtesy
withholding toggle, and an optional effective date field.

- Schema with configurable requiredness via optionalFieldsToRequire
- withEffectiveDateField prop to exclude effective date from schema/UI
- Prebuilt HomeAddressForm component with SDKFormProvider integration
- Registered in SDK dev app for testing
- Updated unstable hooks implementation guide with boolean field guidance

Made-with: Cursor
Wait for observable DOM changes (list mode reappearing) instead of
asserting on the onEvent mock inside waitFor. The mock assertion
was racing against the full async mutation chain and intermittently
exceeding waitFor's default 1000ms timeout in CI.

Made-with: Cursor
@serikjensen serikjensen enabled auto-merge (squash) April 15, 2026 16:39
@serikjensen serikjensen merged commit 0a3e59b into main Apr 15, 2026
14 checks passed
@serikjensen serikjensen deleted the test-failure branch April 15, 2026 16:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants