mirror of
https://github.com/react/react-native-devtools-frontend.git
synced 2026-10-01 01:38:07 +08:00
Breaking changes here https://github.com/mochajs/mocha/releases/tag/v8.0.0 seem fine. DISABLE_THIRD_PARTY_CHECK=Update Mocha Bug: chromium:1101784 Change-Id: Idc75c94f9a923e2b0ca13d1d1331540cb1c5d3a3 Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2279830 Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org> Commit-Queue: Peter Marshall <petermarshall@chromium.org>
31 lines
743 B
JavaScript
31 lines
743 B
JavaScript
module.exports = function properlyBoxed(method) {
|
|
// Check node 0.6.21 bug where third parameter is not boxed
|
|
var properlyBoxesNonStrict = true;
|
|
var properlyBoxesStrict = true;
|
|
var threwException = false;
|
|
if (typeof method === 'function') {
|
|
try {
|
|
// eslint-disable-next-line max-params
|
|
method.call('f', function (_, __, O) {
|
|
if (typeof O !== 'object') {
|
|
properlyBoxesNonStrict = false;
|
|
}
|
|
});
|
|
|
|
method.call(
|
|
[null],
|
|
function () {
|
|
'use strict';
|
|
|
|
properlyBoxesStrict = typeof this === 'string'; // eslint-disable-line no-invalid-this
|
|
},
|
|
'x'
|
|
);
|
|
} catch (e) {
|
|
threwException = true;
|
|
}
|
|
return !threwException && properlyBoxesNonStrict && properlyBoxesStrict;
|
|
}
|
|
return false;
|
|
};
|