fix: repair cross-package test failures and type errors#66
Open
stooit wants to merge 1 commit into
Open
Conversation
- api.ts: import renamed useDebounce (was useThrottle), keep useSearchDebounce alias - Button: forward aria-label so icon-only buttons have an accessible name - DataTable: use functional setState updater in handleSort to fix stale-closure sort direction - date.ts: use locale-aware dateStyle for en-AU day-first formatting - bunfig.toml (root + ui): wire happy-dom environment + preload for RTL component tests - tsconfig.json: add bun-types so bun:test / Bun globals resolve
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes all failing tests and eliminates all type errors across the monorepo.
bun testnow reports 13 pass / 0 fail andnpx tsc --noEmitis clean. The bugs spanned all three packages and their interdependencies.Fixes
apps/web/src/lib/api.ts— renamed-hook import.useThrottlewas renamed touseDebouncein@e2e/utils, but the old name was still imported/re-exported. Updated both while preserving theuseSearchDebouncealias a test depends on.packages/ui/.../Button.tsx— missing accessibility attribute. Thearia-labelprop was destructured but never forwarded to the<button>, so icon-only buttons had no accessible name. Now forwarded (WCAG 4.1.2).packages/ui/.../DataTable.tsx— stale-closure bug.handleSortreadsortDirfrom the render scope, going stale across re-renders. Switched to the functionalsetSortDir(prev => ...)updater — caught by the controlled re-render test.packages/utils/src/format/date.ts— date formatting. Replaced fragile explicitIntl.DateTimeFormatoptions with a locale-aware format foren-AU, giving portable day-first output.Test environment wiring —
bunfig.toml(root +packages/ui). happy-dom environment/preload wasn't fully configured, so React Testing Library renders failed withdocument is not defined. Added the complementaryenvironment = "happy-dom"and preload entries.tsconfig.json—bun:testtypes. Added"types": ["bun-types"](already installed) sobun:test/Bun globals resolve undertsc.strictunchanged — no relaxation of type checking.Constraints honoured
bun-types,happy-domwere already present).Verification
bun test→ 13 pass / 0 failnpx tsc --noEmit→ clean