2018-01-11 10:53:06 -06:00
|
|
|
import React from 'react';
|
|
|
|
import PageHeader from './PageHeader';
|
2019-05-12 07:15:23 -05:00
|
|
|
import { shallow, ShallowWrapper } from 'enzyme';
|
2018-01-11 10:53:06 -06:00
|
|
|
|
|
|
|
describe('PageHeader', () => {
|
2019-05-12 07:15:23 -05:00
|
|
|
let wrapper: ShallowWrapper<PageHeader>;
|
2018-01-11 10:53:06 -06:00
|
|
|
|
|
|
|
describe('when the nav tree has a node with a title', () => {
|
|
|
|
beforeAll(() => {
|
|
|
|
const nav = {
|
|
|
|
main: {
|
2020-04-12 15:20:02 -05:00
|
|
|
icon: 'folder-open',
|
2018-01-11 10:53:06 -06:00
|
|
|
id: 'node',
|
|
|
|
subTitle: 'node subtitle',
|
|
|
|
url: '',
|
|
|
|
text: 'node',
|
|
|
|
},
|
|
|
|
node: {},
|
|
|
|
};
|
|
|
|
wrapper = shallow(<PageHeader model={nav as any} />);
|
|
|
|
});
|
|
|
|
|
|
|
|
it('should render the title', () => {
|
|
|
|
const title = wrapper.find('.page-header__title');
|
|
|
|
expect(title.text()).toBe('node');
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
describe('when the nav tree has a node with breadcrumbs and a title', () => {
|
|
|
|
beforeAll(() => {
|
|
|
|
const nav = {
|
|
|
|
main: {
|
2020-04-12 15:20:02 -05:00
|
|
|
icon: 'folder-open',
|
2018-01-11 10:53:06 -06:00
|
|
|
id: 'child',
|
|
|
|
subTitle: 'child subtitle',
|
|
|
|
url: '',
|
|
|
|
text: 'child',
|
|
|
|
breadcrumbs: [{ title: 'Parent', url: 'parentUrl' }],
|
|
|
|
},
|
|
|
|
node: {},
|
|
|
|
};
|
|
|
|
wrapper = shallow(<PageHeader model={nav as any} />);
|
|
|
|
});
|
|
|
|
|
|
|
|
it('should render the title with breadcrumbs first and then title last', () => {
|
|
|
|
const title = wrapper.find('.page-header__title');
|
|
|
|
expect(title.text()).toBe('Parent / child');
|
|
|
|
|
|
|
|
const parentLink = wrapper.find('.page-header__title > a.text-link');
|
|
|
|
expect(parentLink.prop('href')).toBe('parentUrl');
|
|
|
|
});
|
|
|
|
});
|
|
|
|
});
|