import { shallowMount } from '@vue/test-utils';
import serviceZipQuestion from '@/layouts/service-location/service-zip-modal-question/service-zip-question/service-zip-question.vue';

describe('service-zip-question.vue', () => {
    it('Should get the modelValue', async () => {
        // Arrange
        const text = 'test';
        const wrapper = shallowMount(serviceZipQuestion, {
            props: {
                modelValue: text
            },
            attachTo: document.body
        });

        // Act
        const modelValueText = wrapper.vm.value;
        wrapper.vm.value = 'test also';

        // Assert
        expect(modelValueText).toEqual('test');
    });

    it('Should emit to set value', async () => {
        // Arrange
        const text = 'test';
        const wrapper = shallowMount(serviceZipQuestion, {
            props: {
                modelValue: text
            },
            attachTo: document.body
        });

        // Act
        wrapper.vm.value = 'test also';

        // Assert
        expect(wrapper.emitted('update:modelValue')).toEqual([['test also']]);
    });
});
