Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'spec/frontend/__helpers__')
-rw-r--r--spec/frontend/__helpers__/mock_user_callout_dismisser.js16
-rw-r--r--spec/frontend/__helpers__/vue_test_utils_helper.js11
-rw-r--r--spec/frontend/__helpers__/vue_test_utils_helper_spec.js3
3 files changed, 21 insertions, 9 deletions
diff --git a/spec/frontend/__helpers__/mock_user_callout_dismisser.js b/spec/frontend/__helpers__/mock_user_callout_dismisser.js
new file mode 100644
index 00000000000..652f36028dc
--- /dev/null
+++ b/spec/frontend/__helpers__/mock_user_callout_dismisser.js
@@ -0,0 +1,16 @@
+/**
+ * Mock factory for the UserCalloutDismisser component.
+ * @param {slotProps} The slot props to pass to the default slot content.
+ * @returns {VueComponent}
+ */
+export const makeMockUserCalloutDismisser = ({
+ dismiss = () => {},
+ shouldShowCallout = true,
+} = {}) => ({
+ render() {
+ return this.$scopedSlots.default({
+ dismiss,
+ shouldShowCallout,
+ });
+ },
+});
diff --git a/spec/frontend/__helpers__/vue_test_utils_helper.js b/spec/frontend/__helpers__/vue_test_utils_helper.js
index a94cee84f74..2aae91f8a39 100644
--- a/spec/frontend/__helpers__/vue_test_utils_helper.js
+++ b/spec/frontend/__helpers__/vue_test_utils_helper.js
@@ -1,5 +1,5 @@
import * as testingLibrary from '@testing-library/dom';
-import { createWrapper, WrapperArray, mount, shallowMount } from '@vue/test-utils';
+import { createWrapper, WrapperArray, ErrorWrapper, mount, shallowMount } from '@vue/test-utils';
import { isArray, upperFirst } from 'lodash';
const vNodeContainsText = (vnode, text) =>
@@ -81,14 +81,9 @@ export const extendedWrapper = (wrapper) => {
options,
);
- // Return VTU `ErrorWrapper` if element is not found
- // https://github.com/vuejs/vue-test-utils/blob/dev/packages/test-utils/src/error-wrapper.js
- // VTU does not expose `ErrorWrapper` so, as of now, this is the best way to
- // create an `ErrorWrapper`
+ // Element not found, return an `ErrorWrapper`
if (!elements.length) {
- const emptyElement = document.createElement('div');
-
- return createWrapper(emptyElement).find('testing-library-element-not-found');
+ return new ErrorWrapper(query);
}
return createWrapper(elements[0], this.options || {});
diff --git a/spec/frontend/__helpers__/vue_test_utils_helper_spec.js b/spec/frontend/__helpers__/vue_test_utils_helper_spec.js
index dfe5a483223..3bb228f94b8 100644
--- a/spec/frontend/__helpers__/vue_test_utils_helper_spec.js
+++ b/spec/frontend/__helpers__/vue_test_utils_helper_spec.js
@@ -4,6 +4,7 @@ import {
shallowMount,
Wrapper as VTUWrapper,
WrapperArray as VTUWrapperArray,
+ ErrorWrapper as VTUErrorWrapper,
} from '@vue/test-utils';
import {
extendedWrapper,
@@ -195,7 +196,7 @@ describe('Vue test utils helpers', () => {
});
it('returns a VTU error wrapper', () => {
- expect(wrapper[findMethod](text, options).exists()).toBe(false);
+ expect(wrapper[findMethod](text, options)).toBeInstanceOf(VTUErrorWrapper);
});
});
});