diff --git a/__tests__/Area.test.tsx b/__tests__/Area.test.tsx index 814840a..e37ee7b 100644 --- a/__tests__/Area.test.tsx +++ b/__tests__/Area.test.tsx @@ -91,6 +91,17 @@ describe('test ValidatorProvider', () => { expect(area.state().errors[0]).toBe('Not passed'); }); + it('should not apply rules on blur when non-blurrable element', () => { + const area = mount( + + + + ); + + area.find('canvas').at(0).simulate('blur'); + expect(area.state().errors.length).toBe(0); + }); + it('should render error when area dirty', async () => { const area = mount( @@ -239,4 +250,39 @@ describe('test ValidatorProvider', () => { area.find('input').simulate('blur'); expect(mockFn).toBeCalled(); }); + + it('should get refs by type', async () => { + Validator.extend('test_types', (validator: Validator) => ({ + passed(): boolean { + return validator.refs(undefined, HTMLInputElement).length === 1 + && validator.refs('test1', HTMLTextAreaElement).length === 1 + && validator.refs('test1').length === 1 + && validator.refs('test1', HTMLProgressElement).length === 0; + }, + message(): string { + return 'test'; + } + })) + const mockFn = jest.fn(); + + const provider = mount( + + {({ validate }: ProviderScope) => ( + <> + +