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:
authorGitLab Bot <gitlab-bot@gitlab.com>2023-12-11 21:10:57 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2023-12-11 21:10:57 +0300
commit7eeb03ce0e64c30df91665524e543fe4e611c410 (patch)
tree07cbca6dd30e8c358bca54a0494f4716ad35cd6f /spec/frontend/vue_shared/components
parentd83a3edd4416e93f2815815c1be4ee0a2755a3c5 (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/frontend/vue_shared/components')
-rw-r--r--spec/frontend/vue_shared/components/ci_icon/ci_icon_spec.js (renamed from spec/frontend/vue_shared/components/ci_icon_spec.js)2
-rw-r--r--spec/frontend/vue_shared/components/diff_stats_dropdown_spec.js3
-rw-r--r--spec/frontend/vue_shared/components/new_resource_dropdown/new_resource_dropdown_spec.js18
-rw-r--r--spec/frontend/vue_shared/components/source_viewer/source_viewer_new_spec.js8
4 files changed, 19 insertions, 12 deletions
diff --git a/spec/frontend/vue_shared/components/ci_icon_spec.js b/spec/frontend/vue_shared/components/ci_icon/ci_icon_spec.js
index cbb725bf9e6..792470c8e89 100644
--- a/spec/frontend/vue_shared/components/ci_icon_spec.js
+++ b/spec/frontend/vue_shared/components/ci_icon/ci_icon_spec.js
@@ -1,6 +1,6 @@
import { GlIcon } from '@gitlab/ui';
import { shallowMount } from '@vue/test-utils';
-import CiIcon from '~/vue_shared/components/ci_icon.vue';
+import CiIcon from '~/vue_shared/components/ci_icon/ci_icon.vue';
const mockStatus = {
group: 'success',
diff --git a/spec/frontend/vue_shared/components/diff_stats_dropdown_spec.js b/spec/frontend/vue_shared/components/diff_stats_dropdown_spec.js
index 810269257b6..e2c3fc89525 100644
--- a/spec/frontend/vue_shared/components/diff_stats_dropdown_spec.js
+++ b/spec/frontend/vue_shared/components/diff_stats_dropdown_spec.js
@@ -152,7 +152,8 @@ describe('Diff Stats Dropdown', () => {
});
it('focuses the first item when pressing the down key within the search box', () => {
- const spy = jest.spyOn(wrapper.vm, 'focusFirstItem');
+ const { element } = wrapper.find('.gl-new-dropdown-item');
+ const spy = jest.spyOn(element, 'focus');
findSearchBox().vm.$emit('keydown', new KeyboardEvent({ key: ARROW_DOWN_KEY }));
expect(spy).toHaveBeenCalled();
diff --git a/spec/frontend/vue_shared/components/new_resource_dropdown/new_resource_dropdown_spec.js b/spec/frontend/vue_shared/components/new_resource_dropdown/new_resource_dropdown_spec.js
index 7efc0e162b8..a67276ac64a 100644
--- a/spec/frontend/vue_shared/components/new_resource_dropdown/new_resource_dropdown_spec.js
+++ b/spec/frontend/vue_shared/components/new_resource_dropdown/new_resource_dropdown_spec.js
@@ -11,6 +11,7 @@ import searchProjectsWithinGroupQuery from '~/issues/list/queries/search_project
import { DASH_SCOPE, joinPaths } from '~/lib/utils/url_utility';
import { DEBOUNCE_DELAY } from '~/vue_shared/components/filtered_search_bar/constants';
import { useLocalStorageSpy } from 'helpers/local_storage_helper';
+import { stubComponent } from 'helpers/stub_component';
import {
emptySearchProjectsQueryResponse,
emptySearchProjectsWithinGroupQueryResponse,
@@ -42,6 +43,7 @@ describe('NewResourceDropdown component', () => {
queryResponse = searchProjectsQueryResponse,
mountFn = shallowMount,
propsData = {},
+ stubs = {},
} = {}) => {
const requestHandlers = [[query, jest.fn().mockResolvedValue(queryResponse)]];
const apolloProvider = createMockApollo(requestHandlers);
@@ -49,6 +51,9 @@ describe('NewResourceDropdown component', () => {
wrapper = mountFn(NewResourceDropdown, {
apolloProvider,
propsData,
+ stubs: {
+ ...stubs,
+ },
});
};
@@ -81,13 +86,18 @@ describe('NewResourceDropdown component', () => {
});
it('focuses on input when dropdown is shown', async () => {
- mountComponent({ mountFn: mount });
-
- const inputSpy = jest.spyOn(findInput().vm, 'focusInput');
+ const inputMock = jest.fn();
+ mountComponent({
+ stubs: {
+ GlSearchBoxByType: stubComponent(GlSearchBoxByType, {
+ methods: { focusInput: inputMock },
+ }),
+ },
+ });
await showDropdown();
- expect(inputSpy).toHaveBeenCalledTimes(1);
+ expect(inputMock).toHaveBeenCalledTimes(1);
});
describe.each`
diff --git a/spec/frontend/vue_shared/components/source_viewer/source_viewer_new_spec.js b/spec/frontend/vue_shared/components/source_viewer/source_viewer_new_spec.js
index 58d5a1a63ba..86dc9afaacc 100644
--- a/spec/frontend/vue_shared/components/source_viewer/source_viewer_new_spec.js
+++ b/spec/frontend/vue_shared/components/source_viewer/source_viewer_new_spec.js
@@ -117,22 +117,18 @@ describe('Source Viewer component', () => {
});
it('calls the query only once per chunk', async () => {
- jest.spyOn(wrapper.vm.$apollo, 'query');
-
// We trigger the `appear` event multiple times here in order to simulate the user scrolling past the chunk more than once.
// In this scenario we only want to query the backend once.
await triggerChunkAppear();
await triggerChunkAppear();
- expect(wrapper.vm.$apollo.query).toHaveBeenCalledTimes(1);
+ expect(blameDataQueryHandlerSuccess).toHaveBeenCalledTimes(1);
});
it('requests blame information for overlapping chunk', async () => {
- jest.spyOn(wrapper.vm.$apollo, 'query');
-
await triggerChunkAppear(1);
- expect(wrapper.vm.$apollo.query).toHaveBeenCalledTimes(2);
+ expect(blameDataQueryHandlerSuccess).toHaveBeenCalledTimes(2);
expect(blameDataQueryHandlerSuccess).toHaveBeenCalledWith(
expect.objectContaining({ fromLine: 71, toLine: 110 }),
);