import { mount } from '@vue/test-utils';
import { Comment } from '..';
import { useNamespace } from '../../shared/hooks/use-namespace';
const ns = useNamespace('comment', true);
describe('comment test', () => {
it('comment init render', () => {
const wrapper = mount(Comment);
expect(wrapper.find(ns.e('avatar')).exists()).toBeTruthy();
expect(wrapper.find(ns.e('head')).exists()).toBeTruthy();
expect(wrapper.find(ns.e('author')).exists()).toBeTruthy();
expect(wrapper.find(ns.e('datetime')).exists()).toBeTruthy();
expect(wrapper.find(ns.e('content')).exists()).toBeTruthy();
});
it('comment render slots', () => {
const wrapper = mount(Comment, {
slots: {
avatar: '<label class="slots-avatar"></label>',
author: '<label class="slots-author"></label>r',
datetime: '<label class="slots-datetime"></label>',
default: '<label class="slots-default"></label>',
actions: '<label class="slots-actions"></label>',
},
});
expect(wrapper.find('.slots-avatar').exists()).toBeTruthy();
expect(wrapper.find('.slots-author').exists()).toBeTruthy();
expect(wrapper.find('.slots-datetime').exists()).toBeTruthy();
expect(wrapper.find('.slots-default').exists()).toBeTruthy();
expect(wrapper.find('.slots-actions').exists()).toBeTruthy();
expect(wrapper.find(ns.e('avatar')).exists()).toBeFalsy();
expect(wrapper.find(ns.e('author')).exists()).toBeFalsy();
expect(wrapper.find(ns.e('datetime')).exists()).toBeFalsy();
});
});