Skip to content
Snippets Groups Projects
Commit d3cf0c24 authored by Tim Zallmann's avatar Tim Zallmann
Browse files

Fix for Karma, Static Analysis and RSPec for MR Page

parent c9bacfd6
No related branches found
No related tags found
1 merge request!10495Merge Requests - Assignee
/* eslint-disable object-shorthand, func-names, comma-dangle, no-else-return, quotes */
/* eslint-disable object-shorthand, func-names, no-else-return */
/* global CommentsStore */
/* global ResolveService */
 
Loading
Loading
import Vue from 'vue';
import _ from 'underscore';
import { convertObjectPropsToCamelCase } from '~/lib/utils/common_utils';
import {
findDiffFile,
Loading
Loading
Loading
Loading
@@ -47,6 +47,7 @@ const REGEX_QUICK_ACTIONS = /^\/\w+.*$/gm;
 
export default class Notes {
static initialize(notes_url, note_ids, last_fetched_at, view, enableGFM) {
alert('LALA');
if (!this.instance) {
this.instance = new Notes(notes_url, note_ids, last_fetched_at, view, enableGFM);
}
Loading
Loading
@@ -154,7 +155,11 @@ export default class Notes {
this.$wrapperEl.on('click', '.system-note-commit-list-toggler', this.toggleCommitList);
 
this.$wrapperEl.on('click', '.js-toggle-lazy-diff', this.loadLazyDiff);
this.$wrapperEl.on('click', '.js-toggle-lazy-diff-retry-button', this.onClickRetryLazyLoad.bind(this));
this.$wrapperEl.on(
'click',
'.js-toggle-lazy-diff-retry-button',
this.onClickRetryLazyLoad.bind(this),
);
 
// fetch notes when tab becomes visible
this.$wrapperEl.on('visibilitychange', this.visibilityChange);
Loading
Loading
@@ -252,9 +257,7 @@ export default class Notes {
discussionNoteForm = $textarea.closest('.js-discussion-note-form');
if (discussionNoteForm.length) {
if ($textarea.val() !== '') {
if (
!window.confirm('Are you sure you want to cancel creating this comment?')
) {
if (!window.confirm('Are you sure you want to cancel creating this comment?')) {
return;
}
}
Loading
Loading
@@ -266,9 +269,7 @@ export default class Notes {
originalText = $textarea.closest('form').data('originalNote');
newText = $textarea.val();
if (originalText !== newText) {
if (
!window.confirm('Are you sure you want to cancel editing this comment?')
) {
if (!window.confirm('Are you sure you want to cancel editing this comment?')) {
return;
}
}
Loading
Loading
@@ -469,6 +470,7 @@ export default class Notes {
* Render note in discussion area. To render inline notes use renderDiscussionNote.
*/
renderDiscussionNote(noteEntity, $form) {
console.log('RENDER DISC NOTE');
var discussionContainer, form, row, lineType, diffAvatarContainer;
 
if (!Notes.isNewNote(noteEntity, this.note_ids)) {
Loading
Loading
@@ -1130,6 +1132,7 @@ export default class Notes {
* Removes the form and if necessary it's temporary row.
*/
removeDiscussionNoteForm(form) {
console.log('REM DISC');
var glForm, row;
row = form.closest('tr');
glForm = form.data('glForm');
Loading
Loading
@@ -1316,8 +1319,7 @@ export default class Notes {
 
$retryButton.prop('disabled', true);
 
return this.loadLazyDiff(e)
.then(() => {
return this.loadLazyDiff(e).then(() => {
$retryButton.prop('disabled', false);
});
}
Loading
Loading
@@ -1343,18 +1345,18 @@ export default class Notes {
*/
if (url) {
return axios
.get(url)
.then(({ data }) => {
// Reset state in case last request returned error
$successContainer.removeClass('hidden');
$errorContainer.addClass('hidden');
Notes.renderDiffContent($container, data);
})
.catch(() => {
$successContainer.addClass('hidden');
$errorContainer.removeClass('hidden');
});
.get(url)
.then(({ data }) => {
// Reset state in case last request returned error
$successContainer.removeClass('hidden');
$errorContainer.addClass('hidden');
Notes.renderDiffContent($container, data);
})
.catch(() => {
$successContainer.addClass('hidden');
$errorContainer.removeClass('hidden');
});
}
return Promise.resolve();
}
Loading
Loading
@@ -1545,12 +1547,8 @@ export default class Notes {
<div class="note-header">
<div class="note-header-info">
<a href="/${_.escape(currentUsername)}">
<span class="d-none d-sm-inline-block">${_.escape(
currentUsername,
)}</span>
<span class="note-headline-light">${_.escape(
currentUsername,
)}</span>
<span class="d-none d-sm-inline-block">${_.escape(currentUsername)}</span>
<span class="note-headline-light">${_.escape(currentUsername)}</span>
</a>
</div>
</div>
Loading
Loading
@@ -1565,9 +1563,7 @@ export default class Notes {
);
 
$tempNote.find('.d-none.d-sm-inline-block').text(_.escape(currentUserFullname));
$tempNote
.find('.note-headline-light')
.text(`@${_.escape(currentUsername)}`);
$tempNote.find('.note-headline-light').text(`@${_.escape(currentUsername)}`);
 
return $tempNote;
}
Loading
Loading
Loading
Loading
@@ -186,11 +186,8 @@ describe 'Merge request > User posts diff notes', :js do
 
describe 'posting a note' do
it 'adds as discussion' do
expect(page).to have_css('.js-temp-notes-holder', count: 2)
should_allow_commenting(find('[id="6eb14e00385d2fb284765eb1cd8d420d33d63fc9_22_22"]'), asset_form_reset: false)
expect(page).to have_css('.notes_holder .note.note-discussion', count: 1)
expect(page).to have_css('.js-temp-notes-holder', count: 1)
expect(page).to have_button('Reply...')
end
end
Loading
Loading
@@ -281,6 +278,6 @@ describe 'Merge request > User posts diff notes', :js do
end
 
def assert_form_is_reset
expect(page).to have_no_css('.js-temp-notes-holder')
expect(page).to have_no_css('.note-edit-form')
end
end
Loading
Loading
@@ -51,7 +51,8 @@ describe('DiffFile', () => {
});
 
it('should have collapsed text and link', done => {
vm.file.collapsed = true;
vm.file.collapsed = false;
vm.file.highlightedDiffLines = null;
 
vm.$nextTick(() => {
expect(vm.$el.innerText).toContain('This diff is collapsed');
Loading
Loading
Loading
Loading
@@ -11,7 +11,7 @@ describe('DiffLineGutterContent', () => {
const cmp = Vue.extend(DiffLineGutterContent);
const props = Object.assign({}, options);
props.line = {
code: 'LC_42',
lineCode: 'LC_42',
type: 'new',
oldLine: null,
newLine: 1,
Loading
Loading
@@ -36,7 +36,7 @@ describe('DiffLineGutterContent', () => {
 
it('should return # if there is no lineCode', () => {
const component = createComponent();
component.line.code = '';
component.line.lineCode = '';
expect(component.lineHref).toEqual('#');
});
});
Loading
Loading
Loading
Loading
@@ -141,7 +141,7 @@ describe('DiffsStoreMutations', () => {
const file = { fileHash };
const data = { diff_files: [{ file_hash: fileHash, extra_field: 1, existingField: 1 }] };
 
mutations[types.ADD_COLLAPSED_DIFFS](state, { file, data });
mutations[types.ADD_COLLAPSED_DIFFS](state, { file: state.diffFiles[1], data });
expect(spy).toHaveBeenCalledWith(data, { deep: true });
 
expect(state.diffFiles[1].fileHash).toEqual(fileHash);
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment