mirror of
https://github.com/oven-sh/bun
synced 2026-02-09 18:38:55 +00:00
## Summary - Fixes the `setTimeout.clock` property not being properly deleted after `jest.useRealTimers()` is called - Previously, the property was set to `false` instead of deleted, causing `hasOwnProperty` checks to return `true` - This broke React Testing Library and other libraries that check for fake timers using `Object.prototype.hasOwnProperty.call(setTimeout, 'clock')` ## Changes - Added `JSValue.deleteProperty()` binding in Zig to call JSC's `deleteProperty()` method - Updated `setFakeTimerMarker()` in `FakeTimers.zig` to delete the `clock` property when disabling fake timers - Updated existing test in `test/regression/issue/25869.test.ts` to verify correct behavior - Added new regression test in `test/regression/issue/26284.test.ts` ## Test plan - [x] Verified new test fails with system bun (before fix) - [x] Verified new test passes with debug build (after fix) - [x] Verified existing fake timer tests still pass - [x] Verified test for issue #25869 passes with fix Fixes #26284 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: Claude Bot <claude-bot@bun.sh> Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2.7 KiB
2.7 KiB