summaryrefslogtreecommitdiff
path: root/spec/frontend/projects/compare
diff options
context:
space:
mode:
Diffstat (limited to 'spec/frontend/projects/compare')
-rw-r--r--spec/frontend/projects/compare/components/app_spec.js34
-rw-r--r--spec/frontend/projects/compare/components/mock_data.js1
-rw-r--r--spec/frontend/projects/compare/components/revision_dropdown_legacy_spec.js4
-rw-r--r--spec/frontend/projects/compare/components/revision_dropdown_spec.js6
4 files changed, 40 insertions, 5 deletions
diff --git a/spec/frontend/projects/compare/components/app_spec.js b/spec/frontend/projects/compare/components/app_spec.js
index 2dbecf7cc61..9b052a17caa 100644
--- a/spec/frontend/projects/compare/components/app_spec.js
+++ b/spec/frontend/projects/compare/components/app_spec.js
@@ -134,6 +134,40 @@ describe('CompareApp component', () => {
});
});
+ describe('mode dropdown', () => {
+ const findModeDropdownButton = () => wrapper.find('[data-testid="modeDropdown"]');
+ const findEnableStraightModeButton = () =>
+ wrapper.find('[data-testid="enableStraightModeButton"]');
+ const findDisableStraightModeButton = () =>
+ wrapper.find('[data-testid="disableStraightModeButton"]');
+
+ it('renders the mode dropdown button', () => {
+ expect(findModeDropdownButton().exists()).toBe(true);
+ });
+
+ it('has the correct text', () => {
+ expect(findEnableStraightModeButton().text()).toBe('...');
+ expect(findDisableStraightModeButton().text()).toBe('..');
+ });
+
+ it('straight mode button when clicked', async () => {
+ expect(wrapper.props('straight')).toBe(false);
+ expect(wrapper.find('input[name="straight"]').attributes('value')).toBe('false');
+
+ findEnableStraightModeButton().vm.$emit('click');
+
+ await nextTick();
+
+ expect(wrapper.find('input[name="straight"]').attributes('value')).toBe('true');
+
+ findDisableStraightModeButton().vm.$emit('click');
+
+ await nextTick();
+
+ expect(wrapper.find('input[name="straight"]').attributes('value')).toBe('false');
+ });
+ });
+
describe('merge request buttons', () => {
const findProjectMrButton = () => wrapper.find('[data-testid="projectMrButton"]');
const findCreateMrButton = () => wrapper.find('[data-testid="createMrButton"]');
diff --git a/spec/frontend/projects/compare/components/mock_data.js b/spec/frontend/projects/compare/components/mock_data.js
index 81d64469a2a..28d9a394038 100644
--- a/spec/frontend/projects/compare/components/mock_data.js
+++ b/spec/frontend/projects/compare/components/mock_data.js
@@ -17,6 +17,7 @@ export const appDefaultProps = {
projects: [sourceProject],
paramsFrom: 'main',
paramsTo: 'target/branch',
+ straight: false,
createMrPath: '',
sourceProjectRefsPath,
targetProjectRefsPath,
diff --git a/spec/frontend/projects/compare/components/revision_dropdown_legacy_spec.js b/spec/frontend/projects/compare/components/revision_dropdown_legacy_spec.js
index f64af1aa994..c21c0f4f9d1 100644
--- a/spec/frontend/projects/compare/components/revision_dropdown_legacy_spec.js
+++ b/spec/frontend/projects/compare/components/revision_dropdown_legacy_spec.js
@@ -2,7 +2,7 @@ import { GlDropdown, GlDropdownItem } from '@gitlab/ui';
import { shallowMount } from '@vue/test-utils';
import AxiosMockAdapter from 'axios-mock-adapter';
import { nextTick } from 'vue';
-import createFlash from '~/flash';
+import { createAlert } from '~/flash';
import axios from '~/lib/utils/axios_utils';
import RevisionDropdown from '~/projects/compare/components/revision_dropdown_legacy.vue';
@@ -79,7 +79,7 @@ describe('RevisionDropdown component', () => {
axiosMock.onGet('some/invalid/path').replyOnce(404);
await wrapper.vm.fetchBranchesAndTags();
- expect(createFlash).toHaveBeenCalled();
+ expect(createAlert).toHaveBeenCalled();
});
describe('GlDropdown component', () => {
diff --git a/spec/frontend/projects/compare/components/revision_dropdown_spec.js b/spec/frontend/projects/compare/components/revision_dropdown_spec.js
index 35e32fd3da0..d598bafea92 100644
--- a/spec/frontend/projects/compare/components/revision_dropdown_spec.js
+++ b/spec/frontend/projects/compare/components/revision_dropdown_spec.js
@@ -2,7 +2,7 @@ import { GlDropdown, GlDropdownItem, GlSearchBoxByType } from '@gitlab/ui';
import { shallowMount } from '@vue/test-utils';
import AxiosMockAdapter from 'axios-mock-adapter';
import { nextTick } from 'vue';
-import createFlash from '~/flash';
+import { createAlert } from '~/flash';
import axios from '~/lib/utils/axios_utils';
import RevisionDropdown from '~/projects/compare/components/revision_dropdown.vue';
import { revisionDropdownDefaultProps as defaultProps } from './mock_data';
@@ -67,7 +67,7 @@ describe('RevisionDropdown component', () => {
createComponent();
await wrapper.vm.fetchBranchesAndTags();
- expect(createFlash).toHaveBeenCalled();
+ expect(createAlert).toHaveBeenCalled();
});
it('makes a new request when refsProjectPath is changed', async () => {
@@ -93,7 +93,7 @@ describe('RevisionDropdown component', () => {
createComponent();
await wrapper.vm.searchBranchesAndTags();
- expect(createFlash).toHaveBeenCalled();
+ expect(createAlert).toHaveBeenCalled();
});
it('makes request with search param', async () => {