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/merge_request_spec.js')
-rw-r--r--spec/frontend/merge_request_spec.js67
1 files changed, 32 insertions, 35 deletions
diff --git a/spec/frontend/merge_request_spec.js b/spec/frontend/merge_request_spec.js
index 0b7ed349507..9229b353685 100644
--- a/spec/frontend/merge_request_spec.js
+++ b/spec/frontend/merge_request_spec.js
@@ -1,6 +1,7 @@
import MockAdapter from 'axios-mock-adapter';
import $ from 'jquery';
import { TEST_HOST } from 'spec/test_constants';
+import waitForPromises from 'helpers/wait_for_promises';
import axios from '~/lib/utils/axios_utils';
import MergeRequest from '~/merge_request';
@@ -27,31 +28,31 @@ describe('MergeRequest', () => {
mock.restore();
});
- it('modifies the Markdown field', (done) => {
+ it('modifies the Markdown field', async () => {
jest.spyOn($, 'ajax').mockImplementation();
const changeEvent = document.createEvent('HTMLEvents');
changeEvent.initEvent('change', true, true);
$('input[type=checkbox]').first().attr('checked', true)[0].dispatchEvent(changeEvent);
- setImmediate(() => {
- expect($('.js-task-list-field').val()).toBe(
- '- [x] Task List Item\n- [ ]\n- [ ] Task List Item 2\n',
- );
- done();
- });
+
+ await waitForPromises();
+
+ expect($('.js-task-list-field').val()).toBe(
+ '- [x] Task List Item\n- [ ]\n- [ ] Task List Item 2\n',
+ );
});
- it('ensure that task with only spaces does not get checked incorrectly', (done) => {
+ it('ensure that task with only spaces does not get checked incorrectly', async () => {
// fixed in 'deckar01-task_list', '2.2.1' gem
jest.spyOn($, 'ajax').mockImplementation();
const changeEvent = document.createEvent('HTMLEvents');
changeEvent.initEvent('change', true, true);
$('input[type=checkbox]').last().attr('checked', true)[0].dispatchEvent(changeEvent);
- setImmediate(() => {
- expect($('.js-task-list-field').val()).toBe(
- '- [ ] Task List Item\n- [ ]\n- [x] Task List Item 2\n',
- );
- done();
- });
+
+ await waitForPromises();
+
+ expect($('.js-task-list-field').val()).toBe(
+ '- [ ] Task List Item\n- [ ]\n- [x] Task List Item 2\n',
+ );
});
describe('tasklist', () => {
@@ -60,29 +61,27 @@ describe('MergeRequest', () => {
const index = 3;
const checked = true;
- it('submits an ajax request on tasklist:changed', (done) => {
+ it('submits an ajax request on tasklist:changed', async () => {
$('.js-task-list-field').trigger({
type: 'tasklist:changed',
detail: { lineNumber, lineSource, index, checked },
});
- setImmediate(() => {
- expect(axios.patch).toHaveBeenCalledWith(
- `${TEST_HOST}/frontend-fixtures/merge-requests-project/-/merge_requests/1.json`,
- {
- merge_request: {
- description: '- [ ] Task List Item\n- [ ]\n- [ ] Task List Item 2\n',
- lock_version: 0,
- update_task: { line_number: lineNumber, line_source: lineSource, index, checked },
- },
- },
- );
+ await waitForPromises();
- done();
- });
+ expect(axios.patch).toHaveBeenCalledWith(
+ `${TEST_HOST}/frontend-fixtures/merge-requests-project/-/merge_requests/1.json`,
+ {
+ merge_request: {
+ description: '- [ ] Task List Item\n- [ ]\n- [ ] Task List Item 2\n',
+ lock_version: 0,
+ update_task: { line_number: lineNumber, line_source: lineSource, index, checked },
+ },
+ },
+ );
});
- it('shows an error notification when tasklist update failed', (done) => {
+ it('shows an error notification when tasklist update failed', async () => {
mock
.onPatch(`${TEST_HOST}/frontend-fixtures/merge-requests-project/-/merge_requests/1.json`)
.reply(409, {});
@@ -92,13 +91,11 @@ describe('MergeRequest', () => {
detail: { lineNumber, lineSource, index, checked },
});
- setImmediate(() => {
- expect(document.querySelector('.flash-container .flash-text').innerText.trim()).toBe(
- 'Someone edited this merge request at the same time you did. Please refresh the page to see changes.',
- );
+ await waitForPromises();
- done();
- });
+ expect(document.querySelector('.flash-container .flash-text').innerText.trim()).toBe(
+ 'Someone edited this merge request at the same time you did. Please refresh the page to see changes.',
+ );
});
});
});