Skip to content

Commit 57c719e

Browse files
test: bootstrap component tests (#15)
1 parent f020f3d commit 57c719e

File tree

3 files changed

+93
-340
lines changed

3 files changed

+93
-340
lines changed

packages/vue-split-panel/src/SplitPanel.test.ts

Lines changed: 0 additions & 340 deletions
This file was deleted.
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
import { mount } from '@vue/test-utils';
2+
import { describe, expect, it } from 'vitest';
3+
import { SplitPanel } from '../src';
4+
5+
describe('collapse', () => {
6+
it('collapses when collapsed is set to true', () => {
7+
const wrapper = mount(SplitPanel, {
8+
props: { collapsed: true },
9+
});
10+
11+
expect(wrapper.find('.split-panel').classes()).toContain('collapsed');
12+
});
13+
14+
it('is not collapsed when collapsed is set to false', () => {
15+
const wrapper = mount(SplitPanel, {
16+
props: { collapsed: false },
17+
});
18+
19+
expect(wrapper.find('.split-panel').classes()).not.toContain('collapsed');
20+
});
21+
22+
it('can be collapsed through a prop even when collapsible is false', () => {
23+
const wrapper = mount(SplitPanel, {
24+
props: { collapsible: false, collapsed: true },
25+
});
26+
27+
expect(wrapper.find('.split-panel').classes()).toContain('collapsed');
28+
});
29+
30+
it('sets size to 0 when collapsed', async () => {
31+
const wrapper = mount(SplitPanel, {
32+
props: { size: 30, collapsed: false },
33+
slots: { start: 'Start', end: 'End' },
34+
});
35+
36+
await wrapper.setProps({ collapsed: true });
37+
38+
expect(wrapper.find('[role="separator"]').attributes('aria-valuenow')).toBe('0');
39+
});
40+
41+
it('preserves size when expanding back from collapsed state', async () => {
42+
const wrapper = mount(SplitPanel, {
43+
props: { size: 75 },
44+
});
45+
46+
// Collapse
47+
await wrapper.setProps({ collapsed: true });
48+
expect(wrapper.find('[role="separator"]').attributes('aria-valuenow')).toBe('0');
49+
50+
// Expand back
51+
await wrapper.setProps({ collapsed: false });
52+
expect(wrapper.find('[role="separator"]').attributes('aria-valuenow')).toBe('75');
53+
});
54+
});

0 commit comments

Comments
 (0)