@krassowski/jupyterlab-lsp
Version:
Language Server Protocol integration for JupyterLab
32 lines • 1.59 kB
JavaScript
import { expect } from 'chai';
import { escapeMarkdown, uris_equal } from './utils';
describe('uris_equal', () => {
it('should workaround Windows paths/Pyright issues', () => {
const result = uris_equal('file:///d%3A/a/jupyterlab-lsp/jupyterlab-lsp/atest/output/windows_39_4/home/n%C3%B6te%20b%C3%B2%C3%B3ks/example.py', 'file:///d:/a/jupyterlab-lsp/jupyterlab-lsp/atest/output/windows_39_4/home/n%C3%B6te%20b%C3%B2%C3%B3ks/example.py');
expect(result).to.equal(true);
});
});
describe('escapeMarkdown', () => {
it('escapes italics', () => {
expect(escapeMarkdown('pre *italic* post')).to.equal('pre \\*italic\\* post');
});
it('escapes underscore italics', () => {
expect(escapeMarkdown('pre _italic_ post')).to.equal('pre \\_italic\\_ post');
});
it('escapes escaped italics', () => {
expect(escapeMarkdown('pre \\*non-italic\\* post')).to.equal('pre \\\\\\*non-italic\\\\\\* post');
});
it('escapes bold', () => {
expect(escapeMarkdown('pre **bold** post')).to.equal('pre \\*\\*bold\\*\\* post');
});
it('escapes headers', () => {
expect(escapeMarkdown('pre #heading post')).to.equal('pre \\#heading post');
});
it('escapes URLs', () => {
expect(escapeMarkdown('pre [link](https://example.com) post')).to.equal('pre \\[link\\](https://example.com) post');
});
it('replaces indents with non-breaking spaces', () => {
expect(escapeMarkdown(' indented')).to.equal('\u00A0\u00A0\u00A0\u00A0indented');
});
});
//# sourceMappingURL=utils.spec.js.map