Skip to content

Commit

Permalink
Stop polyfilling Promise in Jest tests
Browse files Browse the repository at this point in the history
Summary:
We've used this Promise polyfill in Jest setup since at least 2015 ([`3ff3987`](facebook/react-native@3ff3987)), when native Promise implementations were either non-existent or new and unstable. We no longer need it.

It causes issues with "modern" timers in Jest, as documented in:
 - facebook/react-native#29303
 - jestjs/jest#10221

It can also obscure real issues due to its default silent handling of uncaught rejections, eg: D39418412.

Changelog:
[General][Changed] - Don't polyfill Promise in Jest setup

Differential Revision: D39417597

fbshipit-source-id: 1773032343f914a37789c7bc43760838f2d86d31
  • Loading branch information
robhogan authored and facebook-github-bot committed Sep 11, 2022
1 parent ffe0cd9 commit 6465677
Showing 1 changed file with 0 additions and 1 deletion.
1 change: 0 additions & 1 deletion jest/setup.js
Expand Up @@ -21,7 +21,6 @@ global.performance = {
now: jest.fn(Date.now),
};

global.Promise = jest.requireActual('promise');
global.regeneratorRuntime = jest.requireActual('regenerator-runtime/runtime');
global.window = global;

Expand Down

0 comments on commit 6465677

Please sign in to comment.