Commit 7ac9cddf authored by GitLab Bot's avatar GitLab Bot

Add latest changes from gitlab-org/gitlab@master

parent fe98ad83
......@@ -117,9 +117,11 @@ describe('KnativeDomainEditor', () => {
it('displays an error banner indicating the operation failure', () => {
wrapper.setProps({ knative: { updateFailed: true, ...knative } });
return wrapper.vm.$nextTick().then(() => {
expect(wrapper.find('.js-cluster-knative-domain-name-failure-message').exists()).toBe(true);
});
});
});
describe(`when knative status is ${UPDATING}`, () => {
beforeEach(() => {
......
......@@ -20,9 +20,12 @@ describe('ClusterFormDropdown', () => {
describe('when initial value is provided', () => {
it('sets selectedItem to initial value', () => {
vm.setProps({ items, value: secondItem.value });
return vm.vm.$nextTick().then(() => {
expect(vm.find(DropdownButton).props('toggleText')).toEqual(secondItem.name);
});
});
});
describe('when no item is selected', () => {
it('displays placeholder text', () => {
......@@ -30,16 +33,22 @@ describe('ClusterFormDropdown', () => {
vm.setProps({ placeholder });
return vm.vm.$nextTick().then(() => {
expect(vm.find(DropdownButton).props('toggleText')).toEqual(placeholder);
});
});
});
describe('when an item is selected', () => {
beforeEach(() => {
vm.setProps({ items });
return vm.vm.$nextTick().then(() => {
vm.findAll('.js-dropdown-item')
.at(1)
.trigger('click');
return vm.vm.$nextTick();
});
});
it('emits input event with selected item', () => {
......@@ -52,12 +61,15 @@ describe('ClusterFormDropdown', () => {
beforeEach(() => {
vm.setProps({ items, multiple: true, value });
return vm.vm.$nextTick().then(() => {
vm.findAll('.js-dropdown-item')
.at(0)
.trigger('click');
vm.findAll('.js-dropdown-item')
.at(1)
.trigger('click');
return vm.vm.$nextTick();
});
});
it('emits input event with an array of selected items', () => {
......@@ -68,6 +80,7 @@ describe('ClusterFormDropdown', () => {
describe('when multiple items can be selected', () => {
beforeEach(() => {
vm.setProps({ items, multiple: true, value: firstItem.value });
return vm.vm.$nextTick();
});
it('displays a checked GlIcon next to the item', () => {
......@@ -85,17 +98,21 @@ describe('ClusterFormDropdown', () => {
vm.setProps({ labelProperty, items: customLabelItems, value: currentValue });
return vm.vm.$nextTick().then(() => {
expect(vm.find(DropdownButton).props('toggleText')).toEqual(label);
});
});
});
describe('when loading', () => {
it('dropdown button isLoading', () => {
vm.setProps({ loading: true });
return vm.vm.$nextTick().then(() => {
expect(vm.find(DropdownButton).props('isLoading')).toBe(true);
});
});
});
describe('when loading and loadingText is provided', () => {
it('uses loading text as toggle button text', () => {
......@@ -103,17 +120,21 @@ describe('ClusterFormDropdown', () => {
vm.setProps({ loading: true, loadingText });
return vm.vm.$nextTick().then(() => {
expect(vm.find(DropdownButton).props('toggleText')).toEqual(loadingText);
});
});
});
describe('when disabled', () => {
it('dropdown button isDisabled', () => {
vm.setProps({ disabled: true });
return vm.vm.$nextTick().then(() => {
expect(vm.find(DropdownButton).props('isDisabled')).toBe(true);
});
});
});
describe('when disabled and disabledText is provided', () => {
it('uses disabled text as toggle button text', () => {
......@@ -121,17 +142,21 @@ describe('ClusterFormDropdown', () => {
vm.setProps({ disabled: true, disabledText });
return vm.vm.$nextTick().then(() => {
expect(vm.find(DropdownButton).props('toggleText')).toBe(disabledText);
});
});
});
describe('when has errors', () => {
it('sets border-danger class selector to dropdown toggle', () => {
vm.setProps({ hasErrors: true });
return vm.vm.$nextTick().then(() => {
expect(vm.find(DropdownButton).classes('border-danger')).toBe(true);
});
});
});
describe('when has errors and an error message', () => {
it('displays error message', () => {
......@@ -139,9 +164,11 @@ describe('ClusterFormDropdown', () => {
vm.setProps({ hasErrors: true, errorMessage });
return vm.vm.$nextTick().then(() => {
expect(vm.find('.js-eks-dropdown-error-message').text()).toEqual(errorMessage);
});
});
});
describe('when no results are available', () => {
it('displays empty text', () => {
......@@ -149,17 +176,21 @@ describe('ClusterFormDropdown', () => {
vm.setProps({ items: [], emptyText });
return vm.vm.$nextTick().then(() => {
expect(vm.find('.js-empty-text').text()).toEqual(emptyText);
});
});
});
it('displays search field placeholder', () => {
const searchFieldPlaceholder = 'Placeholder';
vm.setProps({ searchFieldPlaceholder });
return vm.vm.$nextTick().then(() => {
expect(vm.find(DropdownSearchInput).props('placeholderText')).toEqual(searchFieldPlaceholder);
});
});
it('it filters results by search query', () => {
const searchQuery = secondItem.name;
......
......@@ -66,6 +66,8 @@ describe('error tracking settings project dropdown', () => {
describe('populated project list', () => {
beforeEach(() => {
wrapper.setProps({ projects: _.clone(projectList), hasProjects: true });
return wrapper.vm.$nextTick();
});
it('renders the dropdown', () => {
......@@ -84,6 +86,7 @@ describe('error tracking settings project dropdown', () => {
beforeEach(() => {
wrapper.setProps({ projects: _.clone(projectList), selectedProject, hasProjects: true });
return wrapper.vm.$nextTick();
});
it('does not show helper text', () => {
......@@ -99,6 +102,7 @@ describe('error tracking settings project dropdown', () => {
selectedProject: staleProject,
isProjectInvalid: true,
});
return wrapper.vm.$nextTick();
});
it('displays a error', () => {
......
......@@ -27,8 +27,10 @@ describe('Issuable suggestions app component', () => {
it('does not render with empty search', () => {
wrapper.setProps({ search: '' });
return wrapper.vm.$nextTick().then(() => {
expect(wrapper.isVisible()).toBe(false);
});
});
describe('with data', () => {
let data;
......
......@@ -83,14 +83,18 @@ describe('Time series component', () => {
it('allows user to override max value label text using prop', () => {
timeSeriesChart.setProps({ legendMaxText: 'legendMaxText' });
return timeSeriesChart.vm.$nextTick().then(() => {
expect(timeSeriesChart.props().legendMaxText).toBe('legendMaxText');
});
});
it('allows user to override average value label text using prop', () => {
timeSeriesChart.setProps({ legendAverageText: 'averageText' });
return timeSeriesChart.vm.$nextTick().then(() => {
expect(timeSeriesChart.props().legendAverageText).toBe('averageText');
});
});
describe('methods', () => {
describe('formatTooltipText', () => {
......@@ -267,8 +271,10 @@ describe('Time series component', () => {
option: mockOption,
});
return timeSeriesChart.vm.$nextTick().then(() => {
expect(timeSeriesChart.vm.chartOptions).toEqual(expect.objectContaining(mockOption));
});
});
it('additional series', () => {
timeSeriesChart.setProps({
......@@ -281,12 +287,14 @@ describe('Time series component', () => {
},
});
return timeSeriesChart.vm.$nextTick().then(() => {
const optionSeries = timeSeriesChart.vm.chartOptions.series;
expect(optionSeries.length).toEqual(2);
expect(optionSeries[0].name).toEqual(mockSeriesName);
});
});
});
describe('yAxis formatter', () => {
let format;
......
......@@ -38,8 +38,10 @@ describe('diff_discussion_header component', () => {
wrapper.setProps({ discussion });
return wrapper.vm.$nextTick().then(() => {
expect(wrapper.find('.user-avatar-link').exists()).toBe(true);
});
});
describe('action text', () => {
const commitId = 'razupaltuff';
......
......@@ -30,8 +30,10 @@ describe('Repository table component', () => {
vm.setData({ entries: { blobs: [{ name: 'README.md' }] } });
return vm.vm.$nextTick().then(() => {
expect(vm.find(FilePreview).exists()).toBe(true);
});
});
describe('normalizeData', () => {
it('normalizes edge nodes', () => {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment