From 45c44989c8fb6e24badd18bb83ac5f68de0aceaf Mon Sep 17 00:00:00 2001 From: kibigo! Date: Fri, 17 Nov 2017 19:11:18 -0800 Subject: Forking glitch theme --- .../ui/components/__tests__/column-test.js | 34 ++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 app/javascript/themes/glitch/features/ui/components/__tests__/column-test.js (limited to 'app/javascript/themes/glitch/features/ui/components/__tests__/column-test.js') diff --git a/app/javascript/themes/glitch/features/ui/components/__tests__/column-test.js b/app/javascript/themes/glitch/features/ui/components/__tests__/column-test.js new file mode 100644 index 000000000..1e5e1d8dc --- /dev/null +++ b/app/javascript/themes/glitch/features/ui/components/__tests__/column-test.js @@ -0,0 +1,34 @@ +import React from 'react'; +import { mount } from 'enzyme'; +import Column from '../column'; +import ColumnHeader from '../column_header'; + +describe('', () => { + describe(' click handler', () => { + const originalRaf = global.requestAnimationFrame; + + beforeEach(() => { + global.requestAnimationFrame = jest.fn(); + }); + + afterAll(() => { + global.requestAnimationFrame = originalRaf; + }); + + it('runs the scroll animation if the column contains scrollable content', () => { + const wrapper = mount( + +
+ + ); + wrapper.find(ColumnHeader).simulate('click'); + expect(global.requestAnimationFrame.mock.calls.length).toEqual(1); + }); + + it('does not try to scroll if there is no scrollable content', () => { + const wrapper = mount(); + wrapper.find(ColumnHeader).simulate('click'); + expect(global.requestAnimationFrame.mock.calls.length).toEqual(0); + }); + }); +}); -- cgit