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-01-25 21:08:56 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2023-01-25 21:08:56 +0300
commitff549ec680715e4ea1daf0cee457f29dfe3b6062 (patch)
tree823fc28718a1278025ee2d88c1368958befec4da /spec/frontend
parentec558ad8ed732ff6f8a89aa3651eb92c27c50deb (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/frontend')
-rw-r--r--spec/frontend/abuse_reports/components/abuse_category_selector_spec.js2
-rw-r--r--spec/frontend/ci/runner/components/runner_jobs_table_spec.js8
-rw-r--r--spec/frontend/issues/show/components/incidents/timeline_events_item_spec.js19
-rw-r--r--spec/frontend/issues/show/components/incidents/timeline_events_list_spec.js18
-rw-r--r--spec/frontend/notes/components/note_actions_spec.js8
-rw-r--r--spec/frontend/projects/commit/mock_data.js6
-rw-r--r--spec/frontend/projects/commit/store/getters_spec.js8
-rw-r--r--spec/frontend/projects/report_abuse/components/report_abuse_dropdown_item_spec.js (renamed from spec/frontend/projects/merge_requests/components/report_abuse_dropdown_item_spec.js)2
-rw-r--r--spec/frontend/releases/components/release_block_assets_spec.js36
-rw-r--r--spec/frontend/vue_merge_request_widget/extensions/security_reports/mr_widget_security_reports_spec.js7
10 files changed, 38 insertions, 76 deletions
diff --git a/spec/frontend/abuse_reports/components/abuse_category_selector_spec.js b/spec/frontend/abuse_reports/components/abuse_category_selector_spec.js
index 3383a5c86ec..ec20088c443 100644
--- a/spec/frontend/abuse_reports/components/abuse_category_selector_spec.js
+++ b/spec/frontend/abuse_reports/components/abuse_category_selector_spec.js
@@ -106,7 +106,7 @@ describe('AbuseCategorySelector', () => {
expect(findUserId().attributes()).toMatchObject({
type: 'hidden',
name: 'user_id',
- value: `${USER_ID}`,
+ value: USER_ID.toString(),
});
});
diff --git a/spec/frontend/ci/runner/components/runner_jobs_table_spec.js b/spec/frontend/ci/runner/components/runner_jobs_table_spec.js
index 8defe568df8..281aa1aeb77 100644
--- a/spec/frontend/ci/runner/components/runner_jobs_table_spec.js
+++ b/spec/frontend/ci/runner/components/runner_jobs_table_spec.js
@@ -72,7 +72,7 @@ describe('RunnerJobsTable', () => {
});
it('Displays details of a job', () => {
- const { id, detailedStatus, pipeline, shortSha, commitPath } = mockJobs[0];
+ const { id, detailedStatus, project, shortSha, commitPath } = mockJobs[0];
expect(findCell({ field: 'status' }).text()).toMatchInterpolatedText(detailedStatus.text);
@@ -81,10 +81,8 @@ describe('RunnerJobsTable', () => {
detailedStatus.detailsPath,
);
- expect(findCell({ field: 'project' }).text()).toBe(pipeline.project.name);
- expect(findCell({ field: 'project' }).find('a').attributes('href')).toBe(
- pipeline.project.webUrl,
- );
+ expect(findCell({ field: 'project' }).text()).toBe(project.name);
+ expect(findCell({ field: 'project' }).find('a').attributes('href')).toBe(project.webUrl);
expect(findCell({ field: 'commit' }).text()).toBe(shortSha);
expect(findCell({ field: 'commit' }).find('a').attributes('href')).toBe(commitPath);
diff --git a/spec/frontend/issues/show/components/incidents/timeline_events_item_spec.js b/spec/frontend/issues/show/components/incidents/timeline_events_item_spec.js
index ba0527e5395..acff5d9ed43 100644
--- a/spec/frontend/issues/show/components/incidents/timeline_events_item_spec.js
+++ b/spec/frontend/issues/show/components/incidents/timeline_events_item_spec.js
@@ -27,7 +27,7 @@ describe('IncidentTimelineEventList', () => {
const findCommentIcon = () => wrapper.findComponent(GlIcon);
const findEventTime = () => wrapper.findByTestId('event-time');
- const findEventTag = () => wrapper.findComponent(GlBadge);
+ const findEventTags = () => wrapper.findAllComponents(GlBadge);
const findDropdown = () => wrapper.findComponent(GlDropdown);
const findDeleteButton = () => wrapper.findByText(timelineItemI18n.delete);
@@ -69,15 +69,16 @@ describe('IncidentTimelineEventList', () => {
});
});
- describe('timeline event tag', () => {
- it('does not show when tag is not provided', () => {
- expect(findEventTag().exists()).toBe(false);
- });
-
- it('shows when tag is provided', () => {
- mountComponent({ propsData: { eventTag: 'Start time' } });
+ describe.each([
+ { eventTags: [], expected: 0 },
+ { eventTags: ['Start time'], expected: 1 },
+ { eventTags: ['Start time', 'End time'], expected: 2 },
+ ])('timeline event tags', ({ eventTags, expected }) => {
+ it(`shows ${expected} badges when ${expected} tags are provided`, () => {
+ mountComponent({ propsData: { eventTags } });
- expect(findEventTag().exists()).toBe(true);
+ expect(findEventTags().exists()).toBe(Boolean(expected));
+ expect(findEventTags().length).toBe(eventTags.length);
});
});
diff --git a/spec/frontend/issues/show/components/incidents/timeline_events_list_spec.js b/spec/frontend/issues/show/components/incidents/timeline_events_list_spec.js
index 8a353668153..26fda877089 100644
--- a/spec/frontend/issues/show/components/incidents/timeline_events_list_spec.js
+++ b/spec/frontend/issues/show/components/incidents/timeline_events_list_spec.js
@@ -93,9 +93,7 @@ describe('IncidentTimelineEventList', () => {
expect(findItems().at(1).props('occurredAt')).toBe(mockEvents[1].occurredAt);
expect(findItems().at(1).props('action')).toBe(mockEvents[1].action);
expect(findItems().at(1).props('noteHtml')).toBe(mockEvents[1].noteHtml);
- expect(findItems().at(1).props('eventTag')).toBe(
- mockEvents[1].timelineEventTags.nodes[0].name,
- );
+ expect(findItems().at(1).props('eventTags')).toBe(mockEvents[1].timelineEventTags.nodes);
});
it('formats dates correctly', () => {
@@ -124,20 +122,6 @@ describe('IncidentTimelineEventList', () => {
});
});
- describe('getFirstTag', () => {
- it('returns undefined, when timelineEventTags contains an empty array', () => {
- const returnedTag = wrapper.vm.getFirstTag(mockEvents[0].timelineEventTags);
-
- expect(returnedTag).toEqual(undefined);
- });
-
- it('returns the first string, when timelineEventTags contains array with at least one tag', () => {
- const returnedTag = wrapper.vm.getFirstTag(mockEvents[1].timelineEventTags);
-
- expect(returnedTag).toBe(mockEvents[1].timelineEventTags.nodes[0].name);
- });
- });
-
describe('delete functionality', () => {
beforeEach(() => {
mockConfirmAction({ confirmed: true });
diff --git a/spec/frontend/notes/components/note_actions_spec.js b/spec/frontend/notes/components/note_actions_spec.js
index d95e357f24c..1c336a68acf 100644
--- a/spec/frontend/notes/components/note_actions_spec.js
+++ b/spec/frontend/notes/components/note_actions_spec.js
@@ -413,15 +413,15 @@ describe('noteActions', () => {
});
it('opens the drawer when report abuse button is clicked', async () => {
- findReportAbuseButton().trigger('click');
-
- await nextTick();
+ await findReportAbuseButton().trigger('click');
expect(findAbuseCategorySelector().props('showDrawer')).toEqual(true);
});
it('closes the drawer', async () => {
- await findAbuseCategorySelector().vm.$emit('close-drawer');
+ findAbuseCategorySelector().vm.$emit('close-drawer');
+
+ await nextTick();
expect(findAbuseCategorySelector().props('showDrawer')).toEqual(false);
});
diff --git a/spec/frontend/projects/commit/mock_data.js b/spec/frontend/projects/commit/mock_data.js
index 34e9c400af4..e398d46e69c 100644
--- a/spec/frontend/projects/commit/mock_data.js
+++ b/spec/frontend/projects/commit/mock_data.js
@@ -24,5 +24,9 @@ export default {
openModal: '_open_modal_',
},
mockBranches: ['_branch_1', '_abc_', '_main_'],
- mockProjects: ['_project_1', '_abc_', '_project_'],
+ mockProjects: [
+ { id: 1, name: '_project_1', refsUrl: '/_project_1/refs' },
+ { id: 2, name: '_abc_', refsUrl: '/_abc_/refs' },
+ { id: 3, name: '_project_', refsUrl: '/_project_/refs' },
+ ],
};
diff --git a/spec/frontend/projects/commit/store/getters_spec.js b/spec/frontend/projects/commit/store/getters_spec.js
index 38c45af7aa0..f45f3114550 100644
--- a/spec/frontend/projects/commit/store/getters_spec.js
+++ b/spec/frontend/projects/commit/store/getters_spec.js
@@ -29,9 +29,15 @@ describe('Commit form modal getters', () => {
});
it('should provide a uniq list of projects', () => {
- const projects = ['_project_', '_project_', '_some_other_project'];
+ const projects = [
+ { id: 1, name: '_project_', refsUrl: '/_project_/refs' },
+ { id: 1, name: '_project_', refsUrl: '/_project_/refs' },
+ { id: 3, name: '_some_other_project', refsUrl: '/_some_other_project/refs' },
+ ];
const state = { projects };
+ expect(state.projects.length).toBe(3);
+ expect(getters.sortedProjects(state).length).toBe(2);
expect(getters.sortedProjects(state)).toEqual(projects.slice(1));
});
});
diff --git a/spec/frontend/projects/merge_requests/components/report_abuse_dropdown_item_spec.js b/spec/frontend/projects/report_abuse/components/report_abuse_dropdown_item_spec.js
index 11f770fb05e..de0c889e8c9 100644
--- a/spec/frontend/projects/merge_requests/components/report_abuse_dropdown_item_spec.js
+++ b/spec/frontend/projects/report_abuse/components/report_abuse_dropdown_item_spec.js
@@ -3,7 +3,7 @@ import { GlDropdownItem } from '@gitlab/ui';
import { MountingPortal } from 'portal-vue';
import { shallowMountExtended } from 'helpers/vue_test_utils_helper';
-import ReportAbuseDropdownItem from '~/projects/merge_requests/components/report_abuse_dropdown_item.vue';
+import ReportAbuseDropdownItem from '~/projects/report_abuse/components/report_abuse_dropdown_item.vue';
import AbuseCategorySelector from '~/abuse_reports/components/abuse_category_selector.vue';
describe('ReportAbuseDropdownItem', () => {
diff --git a/spec/frontend/releases/components/release_block_assets_spec.js b/spec/frontend/releases/components/release_block_assets_spec.js
index 4f94e4dfd55..6d53bf5a49e 100644
--- a/spec/frontend/releases/components/release_block_assets_spec.js
+++ b/spec/frontend/releases/components/release_block_assets_spec.js
@@ -123,42 +123,14 @@ describe('Release block assets', () => {
});
});
- describe('external vs internal links', () => {
+ describe('links', () => {
const containsExternalSourceIndicator = () =>
wrapper.find('[data-testid="external-link-indicator"]').exists();
- describe('when a link is external', () => {
- beforeEach(() => {
- defaultProps.assets.sources = [];
- defaultProps.assets.links = [
- {
- ...defaultProps.assets.links[0],
- external: true,
- },
- ];
- createComponent(defaultProps);
- });
-
- it('renders the link with an "external source" indicator', () => {
- expect(containsExternalSourceIndicator()).toBe(true);
- });
- });
+ beforeEach(() => createComponent(defaultProps));
- describe('when a link is internal', () => {
- beforeEach(() => {
- defaultProps.assets.sources = [];
- defaultProps.assets.links = [
- {
- ...defaultProps.assets.links[0],
- external: false,
- },
- ];
- createComponent(defaultProps);
- });
-
- it('renders the link without the "external source" indicator', () => {
- expect(containsExternalSourceIndicator()).toBe(false);
- });
+ it('renders with an external source indicator (except for sections with no title)', () => {
+ expect(containsExternalSourceIndicator()).toBe(true);
});
});
});
diff --git a/spec/frontend/vue_merge_request_widget/extensions/security_reports/mr_widget_security_reports_spec.js b/spec/frontend/vue_merge_request_widget/extensions/security_reports/mr_widget_security_reports_spec.js
index 16c2adaffaf..e23cd92f53e 100644
--- a/spec/frontend/vue_merge_request_widget/extensions/security_reports/mr_widget_security_reports_spec.js
+++ b/spec/frontend/vue_merge_request_widget/extensions/security_reports/mr_widget_security_reports_spec.js
@@ -82,11 +82,8 @@ describe('vue_merge_request_widget/extensions/security_reports/mr_widget_securit
createComponent({ mockResponse: { data: { project: { id: 'project-id' } } } });
});
- it('displays the correct message', () => {
- expect(wrapper.findByText('Security scans have run').exists()).toBe(true);
- });
-
- it('should not display the artifacts dropdown', () => {
+ it('does not render the widget', () => {
+ expect(wrapper.html()).toBe('');
expect(findDropdown().exists()).toBe(false);
});
});