Skip to content
Snippets Groups Projects
Commit f5f97359 authored by Phil Hughes's avatar Phil Hughes
Browse files

Improved the spec

Now correctly tests against different forms
parent b8a96fda
No related branches found
No related tags found
No related merge requests found
/* global Shortcuts */
describe('Shortcuts', () => {
const fixtureName = 'issues/open-issue.html.raw';
const fixtureName = 'issues/issue_with_comment.html.raw';
const createEvent = (type, target) => $.Event(type, {
target,
});
 
preloadFixtures(fixtureName);
 
describe('toggleMarkdownPreview', () => {
let sc;
let event;
 
beforeEach(() => {
loadFixtures(fixtureName);
 
spyOnEvent('.js-md-preview-button', 'focus');
event = $.Event('', {
target: document.querySelector('.js-note-text'),
});
spyOnEvent('.js-new-note-form .js-md-preview-button', 'focus');
spyOnEvent('.edit-note .js-md-preview-button', 'focus');
 
sc = new Shortcuts();
});
 
it('focuses preview button in form', () => {
sc.toggleMarkdownPreview(event);
sc.toggleMarkdownPreview(
createEvent('KeyboardEvent', document.querySelector('.js-new-note-form .js-note-text'),
));
expect('focus').toHaveBeenTriggeredOn('.js-new-note-form .js-md-preview-button');
});
 
expect('focus').toHaveBeenTriggeredOn('.js-md-preview-button');
it('focues preview button inside edit comment form', (done) => {
document.querySelector('.js-note-edit').click();
setTimeout(() => {
sc.toggleMarkdownPreview(
createEvent('KeyboardEvent', document.querySelector('.edit-note .js-note-text'),
));
expect('focus').not.toHaveBeenTriggeredOn('.js-new-note-form .js-md-preview-button');
expect('focus').toHaveBeenTriggeredOn('.edit-note .js-md-preview-button');
done();
});
});
});
});
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