Files
flipper/desktop/scripts/jest-setup.ts
Michel Weststrate e46fcba0b2 Make sure that test stuff doesn't end up in bundles
Summary: When bundling a production bundle of flipper-ui / flipper-server, noticed that a lot of irrelevant stuff ends up. Like: `jest`, `metro`, `testing-library`. The whole jungle basically. Will add safety checks in the next diffs that this no longer happens

Reviewed By: passy

Differential Revision: D33186531

fbshipit-source-id: 1e2034153c8c4a3fac02cd9ce27d99224223df7a
2021-12-17 14:12:50 -08:00

37 lines
1.1 KiB
TypeScript

/**
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @format
*/
// import/no-unresolved complains, although it is a perfectly fine import
// eslint-disable-next-line
global.fetch = require('jest-fetch-mock');
// @ts-ignore
global.electronRequire = require;
// make sure test run everywhere in the same timezone!
// +11, somewhere in the middle of nowhere, so this deviates for everyone and will fail early :)
const timezone = 'Pacific/Pohnpei';
if (process.env.TZ !== timezone) {
throw new Error(
`Test started in the wrong timezone, got ${process.env.TZ}, but expected ${timezone}. Please use the package.json commands to start Jest, or prefix the command with TZ=${timezone}`,
);
}
// Make sure we have identical formatting of Dates everywhere
const toLocaleString = Date.prototype.toLocaleString;
// eslint-disable-next-line no-extend-native
(Date as any).prototype.toLocaleString = function (
_locale: any,
...args: any[]
) {
return toLocaleString.call(this, 'en-US', ...args);
};
require('immer').enableMapSet();