1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
/*= require notes */
/*= require autosize */
/*= require gl_form */
/*= require lib/utils/text_utility */
(function() {
window.gon || (window.gon = {});
window.disableButtonIfEmptyField = function() {
return null;
};
describe('Notes', function() {
describe('task lists', function() {
fixture.preload('issue_note.html');
beforeEach(function() {
fixture.load('issue_note.html');
$('form').on('submit', function(e) {
e.preventDefault();
});
this.notes = new Notes();
});
it('modifies the Markdown field', function() {
$('input[type=checkbox]').attr('checked', true).trigger('change');
expect($('.js-task-list-field').val()).toBe('- [x] Task List Item');
});
it('submits the form on tasklist:changed', function() {
var submitted = false;
$('form').on('submit', function(e) {
submitted = true;
e.preventDefault();
});
$('.js-task-list-field').trigger('tasklist:changed');
expect(submitted).toBe(true);
});
});
describe('comments', function() {
var commentsTemplate = 'comments.html';
var textarea = '.js-note-text';
fixture.preload(commentsTemplate);
beforeEach(function() {
fixture.load(commentsTemplate);
this.notes = new Notes();
this.autoSizeSpy = spyOnEvent($(textarea), 'autosize:update');
spyOn(this.notes, 'renderNote').and.stub();
$(textarea).data('autosave', {
reset: function() {}
});
$('form').on('submit', function(e) {
e.preventDefault();
$('.js-main-target-form').trigger('ajax:success');
});
});
it('autosizes after comment submission', function() {
$(textarea).text('This is an example comment note');
expect(this.autoSizeSpy).not.toHaveBeenTriggered();
$('.js-comment-button').click();
expect(this.autoSizeSpy).toHaveBeenTriggered();
})
});
});
}).call(this);