Skip to content

Commit 9f7fba6

Browse files
authored
Update table-select.spec.js
1 parent 7f21609 commit 9f7fba6

File tree

1 file changed

+51
-0
lines changed

1 file changed

+51
-0
lines changed

src/components/table/table-select.spec.js

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,4 +58,55 @@ describe('table row select', () => {
5858
expect(wrapper.emitted('row-selected').length).toBe(3)
5959
expect(wrapper.emitted('row-selected')[2][0]).toEqual([])
6060
})
61+
62+
it('select mode multi works', async () => {
63+
const wrapper = mount(Table, {
64+
propsData: {
65+
fields: testFields,
66+
items: testItems,
67+
selectable: true,
68+
selectMode: 'single'
69+
}
70+
})
71+
expect(wrapper).toBeDefined()
72+
await wrapper.vm.$nextTick()
73+
expect(wrapper.emitted('row-selected')).not.toBeDefined()
74+
75+
// Click first row
76+
wrapper
77+
.findAll('tbody > tr')
78+
.at(0)
79+
.trigger('click')
80+
await wrapper.vm.$nextTick()
81+
expect(wrapper.emitted('row-selected')).toBeDefined()
82+
expect(wrapper.emitted('row-selected').length).toBe(1)
83+
expect(wrapper.emitted('row-selected')[0][0]).toEqual([testItems[0]])
84+
85+
// Click third row
86+
wrapper
87+
.findAll('tbody > tr')
88+
.at(2)
89+
.trigger('click')
90+
await wrapper.vm.$nextTick()
91+
expect(wrapper.emitted('row-selected').length).toBe(2)
92+
expect(wrapper.emitted('row-selected')[1][0]).toEqual([testItems[0], testItems[2]])
93+
94+
// Click third row again
95+
wrapper
96+
.findAll('tbody > tr')
97+
.at(2)
98+
.trigger('click')
99+
await wrapper.vm.$nextTick()
100+
expect(wrapper.emitted('row-selected').length).toBe(3)
101+
expect(wrapper.emitted('row-selected')[2][0]).toEqual([testItems[0]])
102+
103+
// Click first row again
104+
wrapper
105+
.findAll('tbody > tr')
106+
.at(0)
107+
.trigger('click')
108+
await wrapper.vm.$nextTick()
109+
expect(wrapper.emitted('row-selected').length).toBe(4)
110+
expect(wrapper.emitted('row-selected')[3][0]).toEqual([])
111+
})
61112
})

0 commit comments

Comments
 (0)