2019-08-15 09:53:22 -07:00
|
|
|
'use strict';
|
2019-04-11 09:07:40 -07:00
|
|
|
|
2022-05-11 09:01:05 -07:00
|
|
|
const semver = require('semver');
|
2023-06-22 09:33:05 +01:00
|
|
|
const {ReactVersion} = require('../../../ReactVersions');
|
2022-05-11 09:01:05 -07:00
|
|
|
|
2019-04-11 11:21:59 -07:00
|
|
|
// DevTools stores preferences between sessions in localStorage
|
|
|
|
|
if (!global.hasOwnProperty('localStorage')) {
|
2019-08-15 09:53:22 -07:00
|
|
|
global.localStorage = require('local-storage-fallback').default;
|
2019-04-11 11:21:59 -07:00
|
|
|
}
|
2019-04-11 11:38:45 -07:00
|
|
|
|
|
|
|
|
// Mimic the global we set with Webpack's DefinePlugin
|
|
|
|
|
global.__DEV__ = process.env.NODE_ENV !== 'production';
|
2021-07-01 14:39:18 -04:00
|
|
|
global.__TEST__ = true;
|
2024-06-17 16:31:36 +01:00
|
|
|
global.__IS_FIREFOX__ = false;
|
2024-07-08 18:42:58 -04:00
|
|
|
global.__IS_CHROME__ = false;
|
|
|
|
|
global.__IS_EDGE__ = false;
|
2024-08-02 10:51:15 +01:00
|
|
|
global.__IS_NATIVE__ = false;
|
2025-06-02 21:42:34 -07:00
|
|
|
global.__IS_INTERNAL_MCP_BUILD__ = false;
|
2022-05-11 09:01:05 -07:00
|
|
|
|
2024-02-06 15:03:36 +00:00
|
|
|
const ReactVersionTestingAgainst = process.env.REACT_VERSION || ReactVersion;
|
|
|
|
|
|
2022-05-11 09:01:05 -07:00
|
|
|
global._test_react_version = (range, testName, callback) => {
|
2024-02-06 15:03:36 +00:00
|
|
|
const shouldPass = semver.satisfies(ReactVersionTestingAgainst, range);
|
2022-05-11 09:01:05 -07:00
|
|
|
|
|
|
|
|
if (shouldPass) {
|
|
|
|
|
test(testName, callback);
|
2022-05-13 21:54:50 -07:00
|
|
|
} else {
|
|
|
|
|
test.skip(testName, callback);
|
2022-05-11 09:01:05 -07:00
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
global._test_react_version_focus = (range, testName, callback) => {
|
2024-02-06 15:03:36 +00:00
|
|
|
const shouldPass = semver.satisfies(ReactVersionTestingAgainst, range);
|
2022-05-11 09:01:05 -07:00
|
|
|
|
|
|
|
|
if (shouldPass) {
|
|
|
|
|
test.only(testName, callback);
|
2022-05-13 21:54:50 -07:00
|
|
|
} else {
|
|
|
|
|
test.skip(testName, callback);
|
2022-05-11 09:01:05 -07:00
|
|
|
}
|
|
|
|
|
};
|
2022-05-13 21:54:50 -07:00
|
|
|
|
|
|
|
|
global._test_ignore_for_react_version = (testName, callback) => {
|
|
|
|
|
test.skip(testName, callback);
|
|
|
|
|
};
|