import * as React from 'react'; import { createDriverFactory } from 'wix-ui-test-utils/driver-factory'; import { buttonDriverFactory } from './Button.driver'; import { buttonTestkitFactory } from '../../testkit'; import { buttonTestkitFactory as enzymeButtonTestkitFactory } from '../../testkit/enzyme'; import { runTestkitExistsSuite } from '../../common/testkitTests'; import { Button, ButtonProps } from './'; import { Skin, Priority, Size } from './constants'; import { enumValues } from '../../utils'; const defaults = require('lodash/defaults'); describe('Button', () => { const createDriver = createDriverFactory(buttonDriverFactory); const ButtonWithDefaults = withDefaultsHOC(Button, { children: 'Click me!' }); describe('skin prop', () => { it('should be standard by default', () => { const driver = createDriver(); expect(driver.getSkin()).toBe(Skin.standard); }); enumValues(Skin).forEach((skin: Skin) => { it(`should be '${skin}'`, () => { const driver = createDriver(); expect(driver.getSkin()).toBe(skin); }); }); }); describe('priority prop', () => { it('should be primary by default', () => { const driver = createDriver(); expect(driver.getPriority()).toBe(Priority.primary); }); enumValues(Priority).forEach((priority: Priority) => { it(`should be '${priority}'`, () => { const driver = createDriver(); expect(driver.getPriority()).toBe(priority); }); }); }); describe('size prop', () => { it('should be medium by default', () => { const driver = createDriver(); expect(driver.getSize()).toBe(Size.medium); }); enumValues(Size).forEach((size: Size) => { it(`should be '${size}'`, () => { const driver = createDriver(); expect(driver.getSize()).toBe(size); }); }); }); runTestkitExistsSuite({ Element: