import { UTable } from './UTable'
import { describe, it, expect } from 'vitest'
import { mount } from '@vue/test-utils'
describe('UTable', () => {
it('should render correctly', () => {
const wrapper = mount(UTable)
expect(wrapper.html()).toMatchSnapshot()
})
it('should render header slot correctly', () => {
const wrapper = mount(UTable, {
slots: {
header: 'Header',
},
})
expect(wrapper.find('span').exists()).toBe(true)
expect(wrapper.find('span').text()).toBe('Header')
expect(wrapper.html()).toMatchSnapshot()
})
it('should render footer slot correctly', () => {
const wrapper = mount(UTable, {
slots: {
footer: 'Footer',
},
})
expect(wrapper.find('span').exists()).toBe(true)
expect(wrapper.find('span').text()).toBe('Footer')
expect(wrapper.html()).toMatchSnapshot()
})
it('should render tableHeader and tableContent correctly', () => {
const wrapper = mount(UTable, {
slots: {
tableHeader: 'Table Header',
tableContent: 'Table Content',
},
})
const spans = wrapper.findAll('span')
expect(spans.length).toBe(2)
expect(spans[0].text()).toBe('Table Header')
expect(spans[1].text()).toBe('Table Content')
expect(wrapper.html()).toMatchSnapshot()
})
})