934dc47c8d
* Login page ui initial markup * Fixed login-ui unit-test * Fixed merge typos
49 lines
1.3 KiB
TypeScript
49 lines
1.3 KiB
TypeScript
import { shallowMount, mount } from '@vue/test-utils';
|
|
import HeaderlessInput from '@/components/HeaderlessInput.vue';
|
|
|
|
describe('HeaderlessInput.vue', () => {
|
|
|
|
it('renders correctly with default props', () => {
|
|
|
|
const wrapper = shallowMount(HeaderlessInput);
|
|
|
|
expect(wrapper).toMatchSnapshot();
|
|
});
|
|
|
|
it('renders correctly with size props', () => {
|
|
let placeholder = "test";
|
|
let width = "30px";
|
|
let height = "20px";
|
|
|
|
const wrapper = shallowMount(HeaderlessInput, {
|
|
propsData: { placeholder, width, height }
|
|
});
|
|
|
|
expect(wrapper.find("input").element.style.width).toMatch(width);
|
|
expect(wrapper.find("input").element.style.height).toMatch(height);
|
|
expect(wrapper).toMatchSnapshot();
|
|
});
|
|
|
|
it('renders correctly with isPassword prop', () => {
|
|
const wrapper = mount(HeaderlessInput, {
|
|
propsData: { isPassword: true }
|
|
});
|
|
|
|
expect(wrapper).toMatchSnapshot();
|
|
});
|
|
|
|
it('emit setData on input correctly', () => {
|
|
let testData = "testData";
|
|
|
|
const wrapper = mount(HeaderlessInput);
|
|
|
|
wrapper.find("input").trigger('input');
|
|
|
|
expect(wrapper.emitted("setData").length).toEqual(1);
|
|
|
|
wrapper.vm.$emit('setData', testData);
|
|
|
|
expect(wrapper.emitted("setData")[1][0]).toEqual(testData);
|
|
});
|
|
|
|
}); |