Try solving flaky unit test by switch to use different implementation of setImmediate (#5655)

Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
This commit is contained in:
Janne Savolainen authored and GitHub committed 2022-06-16 09:57:32 -04:00
1 parent 5c049ecca0
commit 9c420d6f1e
2 files changed
+5 -2

No files matched your search

+3 -1
View File
@@ -2,4 +2,6 @@
* Copyright (c) OpenLens Authors. All rights reserved.
* Licensed under MIT License. See LICENSE in root directory for more information.
*/
export const flushPromises = () => new Promise(resolve => setTimeout(resolve, 0));
import { setImmediate } from "timers";
export const flushPromises = () => new Promise(setImmediate);
+2 -1
View File
@@ -6,6 +6,7 @@
import fetchMock from "jest-fetch-mock";
import configurePackages from "./common/configure-packages";
import { configure } from "mobx";
import { setImmediate } from "timers";
// setup default configuration for external npm-packages
configurePackages();
@@ -22,7 +23,7 @@ fetchMock.enableMocks();
// Mock __non_webpack_require__ for tests
globalThis.__non_webpack_require__ = jest.fn();
global.setImmediate = global.setImmediate ?? (<TArgs extends any[]>(callback: (...args: TArgs) => void, ...args: TArgs) => setTimeout(() => callback(...args), 0));
global.setImmediate = setImmediate;
global.fail = ((error = "Test failed without explicit error") => {
console.error(error);