44 lines
1.1 KiB
JavaScript
44 lines
1.1 KiB
JavaScript
import * as utils from '~/blob/utils';
|
|
import Editor from '~/editor/source_editor';
|
|
|
|
jest.mock('~/editor/source_editor');
|
|
|
|
describe('Blob utilities', () => {
|
|
describe('initSourceEditor', () => {
|
|
let editorEl;
|
|
const blobPath = 'foo.txt';
|
|
const blobContent = 'Foo bar';
|
|
const blobGlobalId = 'snippet_777';
|
|
|
|
beforeEach(() => {
|
|
editorEl = document.createElement('div');
|
|
});
|
|
|
|
describe('Monaco editor', () => {
|
|
it('initializes the Source Editor', () => {
|
|
utils.initSourceEditor({ el: editorEl });
|
|
expect(Editor).toHaveBeenCalledWith({
|
|
scrollbar: {
|
|
alwaysConsumeMouseWheel: false,
|
|
},
|
|
});
|
|
});
|
|
|
|
it.each([[{}], [{ blobPath, blobContent, blobGlobalId }]])(
|
|
'creates the instance with the passed parameters %s',
|
|
(extraParams) => {
|
|
const params = {
|
|
el: editorEl,
|
|
...extraParams,
|
|
};
|
|
|
|
expect(Editor.prototype.createInstance).not.toHaveBeenCalled();
|
|
|
|
utils.initSourceEditor(params);
|
|
|
|
expect(Editor.prototype.createInstance).toHaveBeenCalledWith(params);
|
|
},
|
|
);
|
|
});
|
|
});
|
|
});
|