From cee980ddd7b61dc48fe9e8abfa90478c0365b212 Mon Sep 17 00:00:00 2001 From: Rene Haas Date: Tue, 25 Oct 2022 22:31:14 +0200 Subject: [PATCH] add scroll event listener test --- .../test/jest-jsdom/overlayscrollbars.test.ts | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/packages/overlayscrollbars/test/jest-jsdom/overlayscrollbars.test.ts b/packages/overlayscrollbars/test/jest-jsdom/overlayscrollbars.test.ts index 2b400c2..9ba9457 100644 --- a/packages/overlayscrollbars/test/jest-jsdom/overlayscrollbars.test.ts +++ b/packages/overlayscrollbars/test/jest-jsdom/overlayscrollbars.test.ts @@ -302,17 +302,25 @@ describe('overlayscrollbars', () => { const onUpdated = jest.fn(); const onUpdated2 = jest.fn(); const onDestroyed = jest.fn(); + const onScroll = jest.fn(); const osInstance = OverlayScrollbars(div, {}); osInstance.on('initialized', onInitialized); osInstance.on('updated', [onUpdated, onUpdated, onUpdated2]); osInstance.on('destroyed', onDestroyed); + osInstance.on('scroll', onScroll); expect(onInitialized).not.toHaveBeenCalled(); expect(onUpdated).not.toHaveBeenCalled(); expect(onUpdated2).not.toHaveBeenCalled(); + expect(onScroll).not.toHaveBeenCalled(); + + osInstance.elements().scrollEventElement.dispatchEvent(new Event('scroll')); + expect(onScroll).toHaveBeenCalledTimes(1); + expect(onScroll).toHaveBeenLastCalledWith(osInstance, expect.any(Object)); + osInstance.update(); expect(onUpdated).not.toHaveBeenCalled(); expect(onUpdated2).not.toHaveBeenCalled(); @@ -330,8 +338,10 @@ describe('overlayscrollbars', () => { // after destruction no further events are triggered osInstance.update(true); + osInstance.elements().scrollEventElement.dispatchEvent(new Event('scroll')); expect(onUpdated).toHaveBeenCalledTimes(1); expect(onUpdated2).toHaveBeenCalledTimes(1); + expect(onScroll).toHaveBeenCalledTimes(1); }); test('off', () => {