fix(breaking): use real timers internally to fix awaiting with fake timers (#568)

* capture global timers, use them in waitFor, tests+

* use real timers in flushMicroTasks

* test to show changes with modern timer mocks

* use enum-like object for timer modes

* fix tests

* remove default timer mode, add flow types
export other timer helpers, adjust tests and docs

* base waitFor on RTL implementation

* [jest] Capture and restore global promise

* [waitFor] Simulate intervals when using fake timers

* [tests] Fix waitForElementToBeRemoved

* cleanups; use more specific global

* rename globals to match others

Co-authored-by: Michael James Duminy <michael-james.duminy@klarna.com>
Co-authored-by: Michał Pierzchała <thymikee@gmail.com>
This commit is contained in:
Mike Duminy
2021-03-02 13:49:30 +01:00
committed by GitHub
parent 77a9e2e05c
commit 2ccec3c3a3
12 changed files with 375 additions and 81 deletions
+3 -2
View File
@@ -70,11 +70,12 @@
"build": "rm -rf build; babel src --out-dir build --ignore 'src/__tests__/*'"
},
"jest": {
"preset": "react-native",
"preset": "../jest/preset.js",
"moduleFileExtensions": [
"js",
"json"
],
"rootDir": "./src"
"rootDir": "./src",
"testPathIgnorePatterns": ["timerUtils"]
}
}