You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ant-design-vue/components/layout/__tests__/index.test.js

70 lines
1.7 KiB

import { mount } from '@vue/test-utils';
import Layout from '..';
import mountTest from '../../../tests/shared/mountTest';
import { sleep } from '../../../tests/utils';
const { Sider, Content } = Layout;
describe('Layout', () => {
mountTest(Layout);
mountTest(Content);
mountTest(Sider);
it('detect the sider as children', async () => {
const wrapper = mount(
{
render() {
return (
<Layout>
<Sider>Sider</Sider>
<Content>Content</Content>
</Layout>
);
},
},
{ sync: false },
);
await sleep();
expect(wrapper.find('.ant-layout').classes()).toContain('ant-layout-has-sider');
});
it('detect the sider inside the children', async () => {
const wrapper = mount(
{
render() {
return (
<Layout>
<div>
<Sider>Sider</Sider>
</div>
<Content>Content</Content>
</Layout>
);
},
},
{ sync: false },
);
await sleep();
expect(wrapper.find('.ant-layout').classes()).toContain('ant-layout-has-sider');
});
it('detect ant-layout-sider-has-trigger class in sider when ant-layout-sider-trigger div tag exists', async () => {
const wrapper = mount(
{
render() {
return (
<Layout>
<div>
<Sider collapsible>Sider</Sider>
</div>
<Content>Content</Content>
</Layout>
);
},
},
{ sync: false },
);
await sleep();
expect(wrapper.find('.ant-layout-sider').classes()).toContain('ant-layout-sider-has-trigger');
});
});