From c3b1c19d9b0c8982179deda2f472a672c8b42bfa Mon Sep 17 00:00:00 2001 From: zombiej Date: Wed, 26 May 2021 10:56:52 +0800 Subject: [PATCH] chore: clean up --- tests/index.spec.tsx | 97 ++++++++++++++++---------------------------- tsconfig.json | 16 ++++++++ 2 files changed, 52 insertions(+), 61 deletions(-) create mode 100644 tsconfig.json diff --git a/tests/index.spec.tsx b/tests/index.spec.tsx index b1ef1c3..7d86dcb 100644 --- a/tests/index.spec.tsx +++ b/tests/index.spec.tsx @@ -1,5 +1,6 @@ import React, { Fragment } from 'react'; -import { mount, ReactWrapper } from 'enzyme'; +import type { ReactWrapper } from 'enzyme'; +import { mount } from 'enzyme'; import KeyCode from 'rc-util/lib/KeyCode'; @@ -19,6 +20,7 @@ describe('collapse', () => { function onChange(...args: any[]) { if (changeHook) { + // eslint-disable-next-line @typescript-eslint/no-invalid-this changeHook.apply(this, args); } } @@ -36,12 +38,9 @@ describe('collapse', () => { it('add className', () => { const expectedClassName = 'rc-collapse-item important'; - expect( - collapse - .find('.rc-collapse-item') - .at(2) - .getDOMNode().className, - ).toBe(expectedClassName); + expect(collapse.find('.rc-collapse-item').at(2).getDOMNode().className).toBe( + expectedClassName, + ); }); it('create works', () => { @@ -58,12 +57,9 @@ describe('collapse', () => { }); it('should render custom arrow icon corrctly', () => { - expect( - collapse - .find('.rc-collapse-header') - .at(0) - .getDOMNode().textContent, - ).toContain('test>'); + expect(collapse.find('.rc-collapse-header').at(0).getDOMNode().textContent).toContain( + 'test>', + ); }); it('default active works', () => { @@ -78,10 +74,7 @@ describe('collapse', () => { it('onChange works', () => { changeHook = jest.fn(); - collapse - .find('.rc-collapse-header') - .at(1) - .simulate('click'); + collapse.find('.rc-collapse-header').at(1).simulate('click'); expect(changeHook.mock.calls[0][0]).toEqual(['2']); }); @@ -94,12 +87,9 @@ describe('collapse', () => { header.simulate('click'); jest.runAllTimers(); collapse.update(); - expect( - collapse - .find('.rc-collapse-content-inactive') - .at(0) - .getDOMNode().innerHTML, - ).toBe('
second
'); + expect(collapse.find('.rc-collapse-content-inactive').at(0).getDOMNode().innerHTML).toBe( + '
second
', + ); expect(collapse.find('.rc-collapse-content-active').length).toBe(0); }); @@ -215,21 +205,20 @@ describe('collapse', () => { const collapse = mount( - zero + zero - first + first - second + second , - );; + ); it('activeKey number 0, should open one item', () => { expect(collapse.find('.rc-collapse-content-active').length).toBe(1); }); - }); describe('destroyInactivePanel', () => { @@ -376,9 +365,15 @@ describe('collapse', () => { , ); + + jest.runAllTimers(); + collapse.update(); + expect(collapse.find('.rc-collapse-content').length).toBe(1); expect(collapse.find('.rc-collapse-content-active').length).toBe(0); - expect(collapse.find('div.rc-collapse-content-hidden').length).toBe(1); + expect(collapse.find('div.rc-collapse-content-inactive').props().style).toEqual({ + display: 'none', + }); }); }); @@ -403,44 +398,29 @@ describe('collapse', () => { , ); - collapse - .find('.rc-collapse-header') - .at(2) - .simulate('keyPress', { - keyCode: KeyCode.ENTER, - }); + collapse.find('.rc-collapse-header').at(2).simulate('keyPress', { + keyCode: KeyCode.ENTER, + }); jest.runAllTimers(); collapse.update(); expect(collapse.find('.rc-collapse-content-active').length).toBe(0); - collapse - .find('.rc-collapse-header') - .at(0) - .simulate('keyPress', { - keyCode: KeyCode.ENTER, - }); + collapse.find('.rc-collapse-header').at(0).simulate('keyPress', { + keyCode: KeyCode.ENTER, + }); jest.runAllTimers(); collapse.update(); expect(collapse.find('.rc-collapse-content-active').length).toBe(1); expect( - collapse - .find('.rc-collapse-content') - .at(0) - .hasClass('rc-collapse-content-active'), + collapse.find('.rc-collapse-content').at(0).hasClass('rc-collapse-content-active'), ).toBeTruthy(); - collapse - .find('.rc-collapse-header') - .at(0) - .simulate('keyPress', { - keyCode: KeyCode.ENTER, - }); + collapse.find('.rc-collapse-header').at(0).simulate('keyPress', { + keyCode: KeyCode.ENTER, + }); jest.runAllTimers(); collapse.update(); expect(collapse.find('.rc-collapse-content-active').length).toBe(0); expect( - collapse - .find('.rc-collapse-content') - .at(0) - .hasClass('rc-collapse-content-active'), + collapse.find('.rc-collapse-content').at(0).hasClass('rc-collapse-content-active'), ).toBeFalsy(); }); }); @@ -476,12 +456,7 @@ describe('collapse', () => { , ); - expect( - wrapper - .find('.rc-collapse-header') - .at(0) - .getDOMNode().childNodes.length, - ).toBe(1); + expect(wrapper.find('.rc-collapse-header').at(0).getDOMNode().childNodes.length).toBe(1); }); it('should support custom child', () => { diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..4c0fed6 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,16 @@ +{ + "compilerOptions": { + "target": "esnext", + "moduleResolution": "node", + "baseUrl": "./", + "jsx": "preserve", + "declaration": true, + "skipLibCheck": true, + "esModuleInterop": true, + "paths": { + "@/*": ["src/*"], + "@@/*": ["src/.umi/*"], + "rc-collapse": ["src/index.tsx"] + } + } +} \ No newline at end of file