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/diffs')
-rw-r--r--spec/frontend/diffs/components/diff_view_spec.js12
-rw-r--r--spec/frontend/diffs/components/hidden_files_warning_spec.js18
-rw-r--r--spec/frontend/diffs/store/getters_versions_dropdowns_spec.js37
3 files changed, 42 insertions, 25 deletions
diff --git a/spec/frontend/diffs/components/diff_view_spec.js b/spec/frontend/diffs/components/diff_view_spec.js
index 9b8f0421b7c..f982749d1de 100644
--- a/spec/frontend/diffs/components/diff_view_spec.js
+++ b/spec/frontend/diffs/components/diff_view_spec.js
@@ -51,10 +51,18 @@ describe('DiffView', () => {
it('renders a match line', () => {
const wrapper = createWrapper({
- diffLines: [{ isMatchLineLeft: true, left: { rich_text: 'matched text', lineDraft: {} } }],
+ diffLines: [
+ {
+ isMatchLineLeft: true,
+ left: {
+ rich_text: '@@ -4,12 +4,12 @@ import createFlash from '~/flash';',
+ lineDraft: {},
+ },
+ },
+ ],
});
expect(wrapper.find(DiffExpansionCell).exists()).toBe(true);
- expect(wrapper.text()).toContain('matched text');
+ expect(wrapper.text()).toContain("@@ -4,12 +4,12 @@ import createFlash from '~/flash';");
});
it.each`
diff --git a/spec/frontend/diffs/components/hidden_files_warning_spec.js b/spec/frontend/diffs/components/hidden_files_warning_spec.js
index 3f1f23a40f5..bbd4f5faeec 100644
--- a/spec/frontend/diffs/components/hidden_files_warning_spec.js
+++ b/spec/frontend/diffs/components/hidden_files_warning_spec.js
@@ -1,4 +1,6 @@
-import { shallowMount } from '@vue/test-utils';
+import { mount } from '@vue/test-utils';
+import { GlButton } from '@gitlab/ui';
+import { __ } from '~/locale';
import HiddenFilesWarning from '~/diffs/components/hidden_files_warning.vue';
const propsData = {
@@ -12,7 +14,7 @@ describe('HiddenFilesWarning', () => {
let wrapper;
const createComponent = () => {
- wrapper = shallowMount(HiddenFilesWarning, {
+ wrapper = mount(HiddenFilesWarning, {
propsData,
});
};
@@ -26,22 +28,20 @@ describe('HiddenFilesWarning', () => {
});
it('has a correct plain diff URL', () => {
- const plainDiffLink = wrapper.findAll('a').wrappers.filter((x) => x.text() === 'Plain diff')[0];
+ const plainDiffLink = wrapper.findAllComponents(GlButton).at(0);
expect(plainDiffLink.attributes('href')).toBe(propsData.plainDiffPath);
});
it('has a correct email patch URL', () => {
- const emailPatchLink = wrapper
- .findAll('a')
- .wrappers.filter((x) => x.text() === 'Email patch')[0];
+ const emailPatchLink = wrapper.findAllComponents(GlButton).at(1);
expect(emailPatchLink.attributes('href')).toBe(propsData.emailPatchPath);
});
it('has a correct visible/total files text', () => {
- const filesText = wrapper.find('strong');
-
- expect(filesText.text()).toBe('5 of 10');
+ expect(wrapper.text()).toContain(
+ __('To preserve performance only 5 of 10 files are displayed.'),
+ );
});
});
diff --git a/spec/frontend/diffs/store/getters_versions_dropdowns_spec.js b/spec/frontend/diffs/store/getters_versions_dropdowns_spec.js
index 6ea8f691c3c..49f8e22e01c 100644
--- a/spec/frontend/diffs/store/getters_versions_dropdowns_spec.js
+++ b/spec/frontend/diffs/store/getters_versions_dropdowns_spec.js
@@ -79,27 +79,21 @@ describe('Compare diff version dropdowns', () => {
};
};
- const assertVersions = (targetVersions) => {
- // base and head should be the last two versions in that order
- const targetBaseVersion = targetVersions[targetVersions.length - 2];
- const targetHeadVersion = targetVersions[targetVersions.length - 1];
+ const assertVersions = (targetVersions, checkBaseVersion) => {
+ const targetLatestVersion = targetVersions[targetVersions.length - 1];
expect(targetVersions[0]).toEqual(expectedFirstVersion);
- expect(targetBaseVersion).toEqual(expectedBaseVersion);
- expect(targetHeadVersion).toEqual(expectedHeadVersion);
+
+ if (checkBaseVersion) {
+ expect(targetLatestVersion).toEqual(expectedBaseVersion);
+ } else {
+ expect(targetLatestVersion).toEqual(expectedHeadVersion);
+ }
};
afterEach(() => {
setWindowLocation(originalLocation);
});
- it('base version selected', () => {
- setupTest();
- expectedBaseVersion.selected = true;
-
- const targetVersions = getters.diffCompareDropdownTargetVersions(localState, getters);
- assertVersions(targetVersions);
- });
-
it('head version selected', () => {
setupTest(true);
@@ -126,6 +120,21 @@ describe('Compare diff version dropdowns', () => {
});
assertVersions(targetVersions);
});
+
+ describe('when state.mergeRequestDiff.head_version_path is null', () => {
+ beforeEach(() => {
+ localState.mergeRequestDiff.head_version_path = null;
+ });
+
+ it('base version selected', () => {
+ setupTest(true);
+
+ expectedBaseVersion.selected = true;
+
+ const targetVersions = getters.diffCompareDropdownTargetVersions(localState, getters);
+ assertVersions(targetVersions, true);
+ });
+ });
});
it('diffCompareDropdownSourceVersions', () => {