49 lines
1.1 KiB
JavaScript
49 lines
1.1 KiB
JavaScript
|
import { shallowMount } from '@vue/test-utils';
|
||
|
import { GlButton, GlAlert } from '@gitlab/ui';
|
||
|
|
||
|
import SubmitChangesError from '~/static_site_editor/components/submit_changes_error.vue';
|
||
|
|
||
|
import { submitChangesError as error } from '../mock_data';
|
||
|
|
||
|
describe('Submit Changes Error', () => {
|
||
|
let wrapper;
|
||
|
|
||
|
const buildWrapper = (propsData = {}) => {
|
||
|
wrapper = shallowMount(SubmitChangesError, {
|
||
|
propsData: {
|
||
|
...propsData,
|
||
|
},
|
||
|
stubs: {
|
||
|
GlAlert,
|
||
|
},
|
||
|
});
|
||
|
};
|
||
|
|
||
|
const findRetryButton = () => wrapper.find(GlButton);
|
||
|
const findAlert = () => wrapper.find(GlAlert);
|
||
|
|
||
|
beforeEach(() => {
|
||
|
buildWrapper({ error });
|
||
|
});
|
||
|
|
||
|
afterEach(() => {
|
||
|
wrapper.destroy();
|
||
|
});
|
||
|
|
||
|
it('renders error message', () => {
|
||
|
expect(findAlert().text()).toContain(error);
|
||
|
});
|
||
|
|
||
|
it('emits dismiss event when alert emits dismiss event', () => {
|
||
|
findAlert().vm.$emit('dismiss');
|
||
|
|
||
|
expect(wrapper.emitted('dismiss')).toHaveLength(1);
|
||
|
});
|
||
|
|
||
|
it('emits retry event when retry button is clicked', () => {
|
||
|
findRetryButton().vm.$emit('click');
|
||
|
|
||
|
expect(wrapper.emitted('retry')).toHaveLength(1);
|
||
|
});
|
||
|
});
|