chore(deps): upgrade Jest to v30
What does this MR do?
Upgrades the Jest monorepo (jest, @jest/globals, @types/jest) to v30 together, replacing !2668 (closed) which bumped @jest/globals in isolation.
Why the isolated bump failed
Bumping only @jest/globals to v30 while jest stayed at v29 left two copies of expect installed:
node_modules/expectat 29.7.0 (fromjest@29)node_modules/@jest/globals/node_modules/expectat 30.4.1
Tests using import { expect } from '@jest/globals' resolved Matchers from the nested v30 copy (whose interface gained a second type parameter), while the custom matcher augmentation declare module 'expect' targeted the top-level v29 copy. The two no longer merged, so the toBeEquivalentUrl custom matcher was not found and tsc failed. Because every build, package, integration, and e2e job runs tsc, they all failed. test-unit passed since it uses the Jest runtime (still v29), not the v30 types.
The version skew is unavoidable while jest and @jest/globals are on different majors, so the Jest packages have to move together.
Changes
jest ^30.4.2,@jest/globals ^30.4.1,@types/jest ^30.0.0.ts-jeststays at^29(no v30 release yet; 29.4.x already supports Jest 30). After this there is a singleexpect@30.- Updated the
toBeEquivalentUrlmatcher augmentation insearch_input.test.tsto the v30 two parameterMatcherssignature. - Replaced matcher aliases removed in Jest 30 across the test suite:
toBeCalledtotoHaveBeenCalled,toBeCalledWithtotoHaveBeenCalledWith,toBeCalledTimestotoHaveBeenCalledTimes,lastCalledWithtotoHaveBeenLastCalledWith,toThrowErrortotoThrow.
Verification
tsc -p . --noEmit: 0 errors (was 52)jest: 292 suites / 2506 tests pass