diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2021-08-19 12:08:42 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2021-08-19 12:08:42 +0300 |
commit | b76ae638462ab0f673e5915986070518dd3f9ad3 (patch) | |
tree | bdab0533383b52873be0ec0eb4d3c66598ff8b91 /spec/frontend/__helpers__/mock_dom_observer.js | |
parent | 434373eabe7b4be9593d18a585fb763f1e5f1a6f (diff) |
Add latest changes from gitlab-org/gitlab@14-2-stable-eev14.2.0-rc42
Diffstat (limited to 'spec/frontend/__helpers__/mock_dom_observer.js')
-rw-r--r-- | spec/frontend/__helpers__/mock_dom_observer.js | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/spec/frontend/__helpers__/mock_dom_observer.js b/spec/frontend/__helpers__/mock_dom_observer.js index 1b93b81535d..dd26b594ad9 100644 --- a/spec/frontend/__helpers__/mock_dom_observer.js +++ b/spec/frontend/__helpers__/mock_dom_observer.js @@ -52,7 +52,7 @@ class MockIntersectionObserver extends MockObserver { * const { trigger: triggerMutate } = useMockMutationObserver(); * * it('test', () => { - * trigger(el, { options: { childList: true }, entry: { } }); + * triggerMutate(el, { options: { childList: true }, entry: { } }); * }); * }) * ``` @@ -60,33 +60,31 @@ class MockIntersectionObserver extends MockObserver { * @param {String} key */ const useMockObserver = (key, createMock) => { - let mockObserver; + let mockObservers = []; let origObserver; beforeEach(() => { origObserver = global[key]; global[key] = jest.fn().mockImplementation((...args) => { - mockObserver = createMock(...args); + const mockObserver = createMock(...args); + mockObservers.push(mockObserver); return mockObserver; }); }); afterEach(() => { - mockObserver = null; + mockObservers.forEach((x) => x.disconnect()); + mockObservers = []; global[key] = origObserver; }); const trigger = (...args) => { - if (!mockObserver) { - return; - } - - mockObserver.$_triggerObserve(...args); + mockObservers.forEach((observer) => { + observer.$_triggerObserve(...args); + }); }; - const observersCount = () => mockObserver.$_observers.length; - - return { trigger, observersCount }; + return { trigger }; }; export const useMockIntersectionObserver = () => |