aboutsummaryrefslogtreecommitdiff
path: root/node_modules/@jest/core/build/testSchedulerHelper.js
diff options
context:
space:
mode:
authorJoel Kronqvist <joel.h.kronqvist@gmail.com>2022-03-05 19:02:27 +0200
committerJoel Kronqvist <joel.h.kronqvist@gmail.com>2022-03-05 19:02:27 +0200
commit5d309ff52cd399a6b71968a6b9a70c8ac0b98981 (patch)
tree360f7eb50f956e2367ef38fa1fc6ac7ac5258042 /node_modules/@jest/core/build/testSchedulerHelper.js
parentb500a50f1b97d93c98b36ed9a980f8188d648147 (diff)
downloadLYLLRuoka-5d309ff52cd399a6b71968a6b9a70c8ac0b98981.tar.gz
LYLLRuoka-5d309ff52cd399a6b71968a6b9a70c8ac0b98981.zip
Added node_modules for the updating to work properly.
Diffstat (limited to 'node_modules/@jest/core/build/testSchedulerHelper.js')
-rw-r--r--node_modules/@jest/core/build/testSchedulerHelper.js51
1 files changed, 51 insertions, 0 deletions
diff --git a/node_modules/@jest/core/build/testSchedulerHelper.js b/node_modules/@jest/core/build/testSchedulerHelper.js
new file mode 100644
index 0000000..78cf48c
--- /dev/null
+++ b/node_modules/@jest/core/build/testSchedulerHelper.js
@@ -0,0 +1,51 @@
+'use strict';
+
+Object.defineProperty(exports, '__esModule', {
+ value: true
+});
+exports.shouldRunInBand = shouldRunInBand;
+
+/**
+ * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+const SLOW_TEST_TIME = 1000;
+
+function shouldRunInBand(
+ tests,
+ timings,
+ {detectOpenHandles, maxWorkers, watch, watchAll}
+) {
+ // detectOpenHandles makes no sense without runInBand, because it cannot detect leaks in workers
+ if (detectOpenHandles) {
+ return true;
+ }
+ /*
+ * Run in band if we only have one test or one worker available, unless we
+ * are using the watch mode, in which case the TTY has to be responsive and
+ * we cannot schedule anything in the main thread. Same logic applies to
+ * watchAll.
+ * Also, if we are confident from previous runs that the tests will finish
+ * quickly we also run in band to reduce the overhead of spawning workers.
+ * Finally, the user can provide the runInBand argument in the CLI to
+ * force running in band.
+ * https://github.com/facebook/jest/blob/700e0dadb85f5dc8ff5dac6c7e98956690049734/packages/jest-config/src/getMaxWorkers.js#L14-L17
+ */
+
+ const isWatchMode = watch || watchAll;
+ const areFastTests = timings.every(timing => timing < SLOW_TEST_TIME);
+ const oneWorkerOrLess = maxWorkers <= 1;
+ const oneTestOrLess = tests.length <= 1;
+
+ if (isWatchMode) {
+ return oneWorkerOrLess || (oneTestOrLess && areFastTests);
+ }
+
+ return (
+ oneWorkerOrLess ||
+ oneTestOrLess ||
+ (tests.length <= 20 && timings.length > 0 && areFastTests)
+ );
+}