wix-style-react
Version:
wix-style-react
64 lines (57 loc) • 2.21 kB
JavaScript
import React from 'react';
import linkHeaderDriverFactory from './LinkHeader.driver';
import { createDriverFactory } from 'wix-ui-test-utils/driver-factory';
import LinkHeader from './LinkHeader';
import { linkHeaderTestkitFactory, textLinkTestkitFactory } from '../../../testkit';
import { linkHeaderTestkitFactory as enzymeLinkHeaderTestkitFactory } from '../../../testkit/enzyme';
import { mount } from 'enzyme';
import { isTestkitExists, isEnzymeTestkitExists } from '../../../test/utils/testkit-sanity';
describe('LinkHeader', function () {
var createDriver = createDriverFactory(linkHeaderDriverFactory);
it('should have a title', function () {
var driver = createDriver(React.createElement(LinkHeader, {
linkTitle: 'Wix',
linkTo: 'http://www.wix.com/',
title: 'Header Title'
}));
expect(driver.title()).toBe('Header Title');
});
it('should have a subtitle', function () {
var driver = createDriver(React.createElement(LinkHeader, {
linkTitle: 'Wix',
linkTo: 'http://www.wix.com/',
title: 'Header Title',
subtitle: 'Header Subtitle'
}));
expect(driver.subtitle()).toBe('Header Subtitle');
});
it('should have a TextLink testKit', function () {
var driver = createDriver(React.createElement(LinkHeader, {
linkTitle: 'Wix',
linkTo: 'http://www.wix.com/',
title: 'Header Title',
subtitle: 'Header Subtitle'
}));
var textLinkDriverTestkit = textLinkTestkitFactory({
wrapper: driver.element(),
dataHook: driver.linkDataHook()
});
expect(textLinkDriverTestkit.getContent()).toBe('Wix');
});
describe('testkits', function () {
it('should exist', function () {
expect(isTestkitExists(React.createElement(LinkHeader, {
linkTitle: 'Wix',
linkTo: 'http://www.wix.com/',
title: 'Header Title'
}), linkHeaderTestkitFactory)).toBe(true);
});
it('should exist for enzyme', function () {
expect(isEnzymeTestkitExists(React.createElement(LinkHeader, {
linkTitle: 'Wix',
linkTo: 'http://www.wix.com/',
title: 'Header Title'
}), enzymeLinkHeaderTestkitFactory, mount)).toBe(true);
});
});
});