import * as React from 'react'; import {labelDriverFactory} from './Label.driver'; import {labelUniDriverFactory} from './Label.uni.driver'; import {Label} from './'; import {Size} from './constants'; import {createDriverFactory} from 'wix-ui-test-utils/driver-factory'; import {createUniDriverFactory} from 'wix-ui-test-utils/uni-driver-factory'; import {isEnzymeTestkitExists} from 'wix-ui-test-utils/enzyme'; import {isTestkitExists} from 'wix-ui-test-utils/vanilla'; import {mount} from 'enzyme'; import {labelTestkitFactory} from '../../testkit'; import {labelTestkitFactory as enzymeLabelTestkitFactory} from '../../testkit/enzyme'; describe('Label', () => { describe('[sync]', () => { runTests(createDriverFactory(labelDriverFactory)); }); describe('[async]', () => { runTests(createUniDriverFactory(labelUniDriverFactory)); }); function runTests(createDriver) { describe('size prop', () => { it('should be medium by default', async() => { const wrapper = createDriver(); expect(await wrapper.getSize()).toBe('medium'); }); it('should be small', async () => { const wrapper = createDriver(); expect(await wrapper.getSize()).toBe('small'); }); }); describe('children prop', () => { it('renders', async () => { const wrapper = createDriver(); expect(await wrapper.getLabelText()).toBe('Hello'); }); }); } describe('testkit', () => { it('should exist', () => { expect(isTestkitExists(, labelTestkitFactory)).toBe(true); }); }); describe('enzyme testkit', () => { it('should exist', () => { expect(isEnzymeTestkitExists(, enzymeLabelTestkitFactory, mount)).toBe(true); }); }); });