UNPKG

wix-style-react

Version:
118 lines (112 loc) 3.68 kB
import React from 'react'; import ReactTestUtils from 'react-dom/test-utils'; import Label from './Label'; import { tpaLabelTestkitFactory as labelTestkitFactory } from '../../../testkit'; describe('Label', function () { it('should exist', function () { var div = document.createElement('div'); var dataHook = 'Label-hook'; var wrapper = div.appendChild(ReactTestUtils.renderIntoDocument(React.createElement( 'div', null, React.createElement(Label, { dataHook: dataHook }) ))); var labelTestkit = labelTestkitFactory({ wrapper: wrapper, dataHook: dataHook }); expect(labelTestkit.exists()).toBeTruthy(); }); it('should contain passed text', function () { var div = document.createElement('div'); var dataHook = 'Label-hook'; var wrapper = div.appendChild(ReactTestUtils.renderIntoDocument(React.createElement( 'div', null, React.createElement( Label, { dataHook: dataHook }, 'some text' ) ))); var labelTestkit = labelTestkitFactory({ wrapper: wrapper, dataHook: dataHook }); expect(labelTestkit.getContent()).toEqual('some text'); }); it('should contain passed dom element', function () { var div = document.createElement('div'); var dataHook = 'Label-hook'; var wrapper = div.appendChild(ReactTestUtils.renderIntoDocument(React.createElement( 'div', null, React.createElement( Label, { dataHook: dataHook }, React.createElement( 'span', null, 'some text' ) ) ))); var labelTestkit = labelTestkitFactory({ wrapper: wrapper, dataHook: dataHook }); expect(labelTestkit.getContent()).toEqual('<span>some text</span>'); }); it('should contain \'for\' attribute', function () { var div = document.createElement('div'); var dataHook = 'Label-hook'; var wrapper = div.appendChild(ReactTestUtils.renderIntoDocument(React.createElement( 'div', null, React.createElement( Label, { 'for': 'some-id', dataHook: dataHook }, React.createElement( 'span', null, 'some text' ) ) ))); var labelTestkit = labelTestkitFactory({ wrapper: wrapper, dataHook: dataHook }); expect(labelTestkit.getAttribute('for')).toEqual('some-id'); }); it('should contain \'data-hook\' attribute', function () { var div = document.createElement('div'); var dataHook = 'Label-hook'; var wrapper = div.appendChild(ReactTestUtils.renderIntoDocument(React.createElement( 'div', null, React.createElement( Label, { 'for': 'some-id', dataHook: dataHook }, React.createElement( 'span', null, 'some text' ) ) ))); var labelTestkit = labelTestkitFactory({ wrapper: wrapper, dataHook: dataHook }); expect(labelTestkit.getAttribute('data-hook')).toEqual('Label-hook'); }); it('should contain custom class name', function () { var div = document.createElement('div'); var dataHook = 'Label-hook'; var wrapper = div.appendChild(ReactTestUtils.renderIntoDocument(React.createElement( 'div', null, React.createElement( Label, { 'for': 'some-id', labelClassName: 'customLabelStyle', dataHook: dataHook }, React.createElement( 'span', null, 'some text' ) ) ))); var labelTestkit = labelTestkitFactory({ wrapper: wrapper, dataHook: dataHook }); expect(labelTestkit.hasClass('customLabelStyle')).toBeTruthy(); }); });