mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-02-11 18:48:33 -05:00
Merge from vscode 718331d6f3ebd1b571530ab499edb266ddd493d5
This commit is contained in:
@@ -5,6 +5,7 @@
|
||||
|
||||
import * as assert from 'assert';
|
||||
import * as dom from 'vs/base/browser/dom';
|
||||
import * as platform from 'vs/base/common/platform';
|
||||
import { URI } from 'vs/base/common/uri';
|
||||
import { ICodeEditor } from 'vs/editor/browser/editorBrowser';
|
||||
import { CodeEditorServiceImpl } from 'vs/editor/browser/services/codeEditorServiceImpl';
|
||||
@@ -59,6 +60,7 @@ suite.skip('Decoration Render Options', () => { // {{SQL CARBON EDIT}} skip suit
|
||||
assert(
|
||||
sheet.indexOf('background: url(\'https://github.com/Microsoft/vscode/blob/master/resources/linux/code.png\') center center no-repeat;') > 0
|
||||
|| sheet.indexOf('background: url("https://github.com/Microsoft/vscode/blob/master/resources/linux/code.png") center center / contain no-repeat;') > 0
|
||||
|| sheet.indexOf('background-image: url("https://github.com/Microsoft/vscode/blob/master/resources/linux/code.png"); background-size: contain; background-position: center center; background-repeat: no-repeat no-repeat;') > 0
|
||||
);
|
||||
assert(sheet.indexOf('border-color: yellow;') > 0);
|
||||
assert(sheet.indexOf('background-color: red;') > 0);
|
||||
@@ -139,17 +141,23 @@ suite.skip('Decoration Render Options', () => { // {{SQL CARBON EDIT}} skip suit
|
||||
assert(
|
||||
sheet.indexOf('background: url(\'file:///Users/foo/bar.png\') center center no-repeat;') > 0
|
||||
|| sheet.indexOf('background: url("file:///Users/foo/bar.png") center center no-repeat;') > 0
|
||||
|| sheet.indexOf('background-image: url("file:///Users/foo/bar.png"); background-position: center center; background-repeat: no-repeat no-repeat;') > 0
|
||||
);
|
||||
s.removeDecorationType('example');
|
||||
|
||||
// windows file path (used as string)
|
||||
s = new TestCodeEditorServiceImpl(themeServiceMock, styleSheet);
|
||||
s.registerDecorationType('example', { gutterIconPath: URI.file('c:\\files\\miles\\more.png') });
|
||||
sheet = readStyleSheet(styleSheet);
|
||||
// TODO@Alex test fails
|
||||
// assert(
|
||||
// sheet.indexOf('background: url(\'file:///c%3A/files/miles/more.png\') center center no-repeat;') > 0
|
||||
// || sheet.indexOf('background: url("file:///c%3A/files/miles/more.png") center center no-repeat;') > 0
|
||||
// );
|
||||
if (platform.isWindows) {
|
||||
s = new TestCodeEditorServiceImpl(themeServiceMock, styleSheet);
|
||||
s.registerDecorationType('example', { gutterIconPath: URI.file('c:\\files\\miles\\more.png') });
|
||||
sheet = readStyleSheet(styleSheet);
|
||||
assert(
|
||||
sheet.indexOf('background: url(\'file:///c%3A/files/miles/more.png\') center center no-repeat;') > 0
|
||||
|| sheet.indexOf('background: url("file:///c%3A/files/miles/more.png") center center no-repeat;') > 0
|
||||
|| sheet.indexOf('background: url("file:///c:/files/miles/more.png") center center no-repeat;') > 0
|
||||
|| sheet.indexOf('background-image: url("file:///c:/files/miles/more.png"); background-position: center center; background-repeat: no-repeat no-repeat;') > 0
|
||||
);
|
||||
s.removeDecorationType('example');
|
||||
}
|
||||
|
||||
// URI, only minimal encoding
|
||||
s = new TestCodeEditorServiceImpl(themeServiceMock, styleSheet);
|
||||
@@ -158,7 +166,9 @@ suite.skip('Decoration Render Options', () => { // {{SQL CARBON EDIT}} skip suit
|
||||
assert(
|
||||
sheet.indexOf('background: url(\'data:image/svg+xml;base64,PHN2ZyB4b+\') center center no-repeat;') > 0
|
||||
|| sheet.indexOf('background: url("data:image/svg+xml;base64,PHN2ZyB4b+") center center no-repeat;') > 0
|
||||
|| sheet.indexOf('background-image: url("data:image/svg+xml;base64,PHN2ZyB4b+"); background-position: center center; background-repeat: no-repeat no-repeat;') > 0
|
||||
);
|
||||
s.removeDecorationType('example');
|
||||
|
||||
// single quote must always be escaped/encoded
|
||||
s = new TestCodeEditorServiceImpl(themeServiceMock, styleSheet);
|
||||
@@ -167,7 +177,9 @@ suite.skip('Decoration Render Options', () => { // {{SQL CARBON EDIT}} skip suit
|
||||
assert(
|
||||
sheet.indexOf('background: url(\'file:///Users/foo/b%27ar.png\') center center no-repeat;') > 0
|
||||
|| sheet.indexOf('background: url("file:///Users/foo/b%27ar.png") center center no-repeat;') > 0
|
||||
|| sheet.indexOf('background-image: url("file:///Users/foo/b%27ar.png"); background-position: center center; background-repeat: no-repeat no-repeat;') > 0
|
||||
);
|
||||
s.removeDecorationType('example');
|
||||
|
||||
s = new TestCodeEditorServiceImpl(themeServiceMock, styleSheet);
|
||||
s.registerDecorationType('example', { gutterIconPath: URI.parse('http://test/pa\'th') });
|
||||
@@ -175,6 +187,8 @@ suite.skip('Decoration Render Options', () => { // {{SQL CARBON EDIT}} skip suit
|
||||
assert(
|
||||
sheet.indexOf('background: url(\'http://test/pa%27th\') center center no-repeat;') > 0
|
||||
|| sheet.indexOf('background: url("http://test/pa%27th") center center no-repeat;') > 0
|
||||
|| sheet.indexOf('background-image: url("http://test/pa%27th"); background-position: center center; background-repeat: no-repeat no-repeat;') > 0
|
||||
);
|
||||
s.removeDecorationType('example');
|
||||
});
|
||||
});
|
||||
|
||||
@@ -10,22 +10,6 @@ import { MinimapCharRendererFactory } from 'vs/editor/browser/viewParts/minimap/
|
||||
|
||||
suite('MinimapCharRenderer', () => {
|
||||
|
||||
let sampleData: Uint8ClampedArray | null = null;
|
||||
|
||||
suiteSetup(() => {
|
||||
sampleData = new Uint8ClampedArray(Constants.SAMPLED_CHAR_HEIGHT * Constants.SAMPLED_CHAR_WIDTH * Constants.RGBA_CHANNELS_CNT * Constants.CHAR_COUNT);
|
||||
});
|
||||
|
||||
suiteTeardown(() => {
|
||||
sampleData = null;
|
||||
});
|
||||
|
||||
setup(() => {
|
||||
for (let i = 0; i < sampleData!.length; i++) {
|
||||
sampleData![i] = 0;
|
||||
}
|
||||
});
|
||||
|
||||
const sampleD = [
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xD0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x78, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xD0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x78, 0x00, 0x00, 0x00, 0x00,
|
||||
@@ -45,7 +29,13 @@ suite('MinimapCharRenderer', () => {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
];
|
||||
|
||||
function setSampleData(charCode: number, data: number[]) {
|
||||
function getSampleData() {
|
||||
const charCode = 'd'.charCodeAt(0);
|
||||
const result = new Uint8ClampedArray(Constants.SAMPLED_CHAR_HEIGHT * Constants.SAMPLED_CHAR_WIDTH * Constants.RGBA_CHANNELS_CNT * Constants.CHAR_COUNT);
|
||||
for (let i = 0; i < result.length; i++) {
|
||||
result[i] = 0;
|
||||
}
|
||||
|
||||
const rowWidth = Constants.SAMPLED_CHAR_WIDTH * Constants.RGBA_CHANNELS_CNT * Constants.CHAR_COUNT;
|
||||
let chIndex = charCode - Constants.START_CH_CODE;
|
||||
|
||||
@@ -55,13 +45,15 @@ suite('MinimapCharRenderer', () => {
|
||||
let outputOffset = globalOutputOffset;
|
||||
for (let j = 0; j < Constants.SAMPLED_CHAR_WIDTH; j++) {
|
||||
for (let channel = 0; channel < Constants.RGBA_CHANNELS_CNT; channel++) {
|
||||
sampleData![outputOffset] = data[inputOffset];
|
||||
result[outputOffset] = sampleD[inputOffset];
|
||||
inputOffset++;
|
||||
outputOffset++;
|
||||
}
|
||||
}
|
||||
globalOutputOffset += rowWidth;
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
function createFakeImageData(width: number, height: number): ImageData {
|
||||
@@ -73,8 +65,8 @@ suite('MinimapCharRenderer', () => {
|
||||
}
|
||||
|
||||
test('letter d @ 2x', () => {
|
||||
setSampleData('d'.charCodeAt(0), sampleD);
|
||||
let renderer = MinimapCharRendererFactory.createFromSampleData(sampleData!, 2);
|
||||
const sampleData = getSampleData();
|
||||
let renderer = MinimapCharRendererFactory.createFromSampleData(sampleData, 2);
|
||||
|
||||
let background = new RGBA8(0, 0, 0, 255);
|
||||
let color = new RGBA8(255, 255, 255, 255);
|
||||
@@ -94,16 +86,16 @@ suite('MinimapCharRenderer', () => {
|
||||
}
|
||||
|
||||
assert.deepEqual(actual, [
|
||||
0x2E, 0x2E, 0x2E, 0xFF, 0xAD, 0xAD, 0xAD, 0xFF,
|
||||
0x2D, 0x2D, 0x2D, 0xFF, 0xAC, 0xAC, 0xAC, 0xFF,
|
||||
0xC6, 0xC6, 0xC6, 0xFF, 0xC8, 0xC8, 0xC8, 0xFF,
|
||||
0xC1, 0xC1, 0xC1, 0xFF, 0xCC, 0xCC, 0xCC, 0xFF,
|
||||
0xC0, 0xC0, 0xC0, 0xFF, 0xCB, 0xCB, 0xCB, 0xFF,
|
||||
0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0xFF,
|
||||
]);
|
||||
});
|
||||
|
||||
test('letter d @ 1x', () => {
|
||||
setSampleData('d'.charCodeAt(0), sampleD);
|
||||
let renderer = MinimapCharRendererFactory.createFromSampleData(sampleData!, 1);
|
||||
const sampleData = getSampleData();
|
||||
let renderer = MinimapCharRendererFactory.createFromSampleData(sampleData, 1);
|
||||
|
||||
let background = new RGBA8(0, 0, 0, 255);
|
||||
let color = new RGBA8(255, 255, 255, 255);
|
||||
@@ -125,7 +117,7 @@ suite('MinimapCharRenderer', () => {
|
||||
|
||||
assert.deepEqual(actual, [
|
||||
0xCB, 0xCB, 0xCB, 0xFF,
|
||||
0x82, 0x82, 0x82, 0xFF,
|
||||
0x81, 0x81, 0x81, 0xFF,
|
||||
]);
|
||||
});
|
||||
|
||||
|
||||
@@ -572,207 +572,178 @@ suite('TextModelWithTokens regression tests', () => {
|
||||
});
|
||||
|
||||
suite('TextModel.getLineIndentGuide', () => {
|
||||
function assertIndentGuides(lines: [number, string][]): void {
|
||||
let text = lines.map(l => l[1]).join('\n');
|
||||
function assertIndentGuides(lines: [number, number, number, number, string][], tabSize: number): void {
|
||||
let text = lines.map(l => l[4]).join('\n');
|
||||
let model = TextModel.createFromString(text);
|
||||
model.updateOptions({ tabSize: tabSize });
|
||||
|
||||
let actualIndents = model.getLinesIndentGuides(1, model.getLineCount());
|
||||
|
||||
let actual: [number, string][] = [];
|
||||
let actual: [number, number, number, number, string][] = [];
|
||||
for (let line = 1; line <= model.getLineCount(); line++) {
|
||||
actual[line - 1] = [actualIndents[line - 1], model.getLineContent(line)];
|
||||
const activeIndentGuide = model.getActiveIndentGuide(line, 1, model.getLineCount());
|
||||
actual[line - 1] = [actualIndents[line - 1], activeIndentGuide.startLineNumber, activeIndentGuide.endLineNumber, activeIndentGuide.indent, model.getLineContent(line)];
|
||||
}
|
||||
|
||||
assert.deepEqual(actual, lines);
|
||||
|
||||
// Also test getActiveIndentGuide
|
||||
for (let lineNumber = 1; lineNumber <= model.getLineCount(); lineNumber++) {
|
||||
let startLineNumber = lineNumber;
|
||||
let endLineNumber = lineNumber;
|
||||
let indent = actualIndents[lineNumber - 1];
|
||||
|
||||
if (indent !== 0) {
|
||||
for (let i = lineNumber - 1; i >= 1; i--) {
|
||||
const currIndent = actualIndents[i - 1];
|
||||
if (currIndent >= indent) {
|
||||
startLineNumber = i;
|
||||
} else {
|
||||
break;
|
||||
}
|
||||
}
|
||||
for (let i = lineNumber + 1; i <= model.getLineCount(); i++) {
|
||||
const currIndent = actualIndents[i - 1];
|
||||
if (currIndent >= indent) {
|
||||
endLineNumber = i;
|
||||
} else {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const expected = { startLineNumber, endLineNumber, indent };
|
||||
const actual = model.getActiveIndentGuide(lineNumber, 1, model.getLineCount());
|
||||
|
||||
assert.deepEqual(actual, expected, `line number ${lineNumber}`);
|
||||
}
|
||||
|
||||
model.dispose();
|
||||
}
|
||||
|
||||
test('getLineIndentGuide one level', () => {
|
||||
test('getLineIndentGuide one level 2', () => {
|
||||
assertIndentGuides([
|
||||
[0, 'A'],
|
||||
[1, ' A'],
|
||||
[1, ' A'],
|
||||
[1, ' A'],
|
||||
]);
|
||||
[0, 2, 4, 1, 'A'],
|
||||
[1, 2, 4, 1, ' A'],
|
||||
[1, 2, 4, 1, ' A'],
|
||||
[1, 2, 4, 1, ' A'],
|
||||
], 2);
|
||||
});
|
||||
|
||||
test('getLineIndentGuide two levels', () => {
|
||||
assertIndentGuides([
|
||||
[0, 'A'],
|
||||
[1, ' A'],
|
||||
[1, ' A'],
|
||||
[1, ' A'],
|
||||
[1, ' A'],
|
||||
]);
|
||||
[0, 2, 5, 1, 'A'],
|
||||
[1, 2, 5, 1, ' A'],
|
||||
[1, 4, 5, 2, ' A'],
|
||||
[2, 4, 5, 2, ' A'],
|
||||
[2, 4, 5, 2, ' A'],
|
||||
], 2);
|
||||
});
|
||||
|
||||
test('getLineIndentGuide three levels', () => {
|
||||
assertIndentGuides([
|
||||
[0, 'A'],
|
||||
[1, ' A'],
|
||||
[1, ' A'],
|
||||
[2, ' A'],
|
||||
[0, 'A'],
|
||||
]);
|
||||
[0, 2, 4, 1, 'A'],
|
||||
[1, 3, 4, 2, ' A'],
|
||||
[2, 4, 4, 3, ' A'],
|
||||
[3, 4, 4, 3, ' A'],
|
||||
[0, 5, 5, 0, 'A'],
|
||||
], 2);
|
||||
});
|
||||
|
||||
test('getLineIndentGuide decreasing indent', () => {
|
||||
assertIndentGuides([
|
||||
[1, ' A'],
|
||||
[1, ' A'],
|
||||
[0, 'A'],
|
||||
]);
|
||||
[2, 1, 1, 2, ' A'],
|
||||
[1, 1, 1, 2, ' A'],
|
||||
[0, 1, 2, 1, 'A'],
|
||||
], 2);
|
||||
});
|
||||
|
||||
test('getLineIndentGuide Java', () => {
|
||||
assertIndentGuides([
|
||||
/* 1*/[0, 'class A {'],
|
||||
/* 2*/[1, ' void foo() {'],
|
||||
/* 3*/[1, ' console.log(1);'],
|
||||
/* 4*/[1, ' console.log(2);'],
|
||||
/* 5*/[1, ' }'],
|
||||
/* 6*/[1, ''],
|
||||
/* 7*/[1, ' void bar() {'],
|
||||
/* 8*/[1, ' console.log(3);'],
|
||||
/* 9*/[1, ' }'],
|
||||
/*10*/[0, '}'],
|
||||
/*11*/[0, 'interface B {'],
|
||||
/*12*/[1, ' void bar();'],
|
||||
/*13*/[0, '}'],
|
||||
]);
|
||||
/* 1*/[0, 2, 9, 1, 'class A {'],
|
||||
/* 2*/[1, 3, 4, 2, ' void foo() {'],
|
||||
/* 3*/[2, 3, 4, 2, ' console.log(1);'],
|
||||
/* 4*/[2, 3, 4, 2, ' console.log(2);'],
|
||||
/* 5*/[1, 3, 4, 2, ' }'],
|
||||
/* 6*/[1, 2, 9, 1, ''],
|
||||
/* 7*/[1, 8, 8, 2, ' void bar() {'],
|
||||
/* 8*/[2, 8, 8, 2, ' console.log(3);'],
|
||||
/* 9*/[1, 8, 8, 2, ' }'],
|
||||
/*10*/[0, 2, 9, 1, '}'],
|
||||
/*11*/[0, 12, 12, 1, 'interface B {'],
|
||||
/*12*/[1, 12, 12, 1, ' void bar();'],
|
||||
/*13*/[0, 12, 12, 1, '}'],
|
||||
], 2);
|
||||
});
|
||||
|
||||
test('getLineIndentGuide Javadoc', () => {
|
||||
assertIndentGuides([
|
||||
[0, '/**'],
|
||||
[1, ' * Comment'],
|
||||
[1, ' */'],
|
||||
[0, 'class A {'],
|
||||
[1, ' void foo() {'],
|
||||
[1, ' }'],
|
||||
[0, '}'],
|
||||
]);
|
||||
[0, 2, 3, 1, '/**'],
|
||||
[1, 2, 3, 1, ' * Comment'],
|
||||
[1, 2, 3, 1, ' */'],
|
||||
[0, 5, 6, 1, 'class A {'],
|
||||
[1, 5, 6, 1, ' void foo() {'],
|
||||
[1, 5, 6, 1, ' }'],
|
||||
[0, 5, 6, 1, '}'],
|
||||
], 2);
|
||||
});
|
||||
|
||||
test('getLineIndentGuide Whitespace', () => {
|
||||
assertIndentGuides([
|
||||
[0, 'class A {'],
|
||||
[1, ''],
|
||||
[1, ' void foo() {'],
|
||||
[1, ' '],
|
||||
[2, ' return 1;'],
|
||||
[1, ' }'],
|
||||
[1, ' '],
|
||||
[0, '}'],
|
||||
]);
|
||||
[0, 2, 7, 1, 'class A {'],
|
||||
[1, 2, 7, 1, ''],
|
||||
[1, 4, 5, 2, ' void foo() {'],
|
||||
[2, 4, 5, 2, ' '],
|
||||
[2, 4, 5, 2, ' return 1;'],
|
||||
[1, 4, 5, 2, ' }'],
|
||||
[1, 2, 7, 1, ' '],
|
||||
[0, 2, 7, 1, '}']
|
||||
], 2);
|
||||
});
|
||||
|
||||
test('getLineIndentGuide Tabs', () => {
|
||||
assertIndentGuides([
|
||||
[0, 'class A {'],
|
||||
[1, '\t\t'],
|
||||
[1, '\tvoid foo() {'],
|
||||
[2, '\t \t//hello'],
|
||||
[2, '\t return 2;'],
|
||||
[1, ' \t}'],
|
||||
[1, ' '],
|
||||
[0, '}'],
|
||||
]);
|
||||
[0, 2, 7, 1, 'class A {'],
|
||||
[1, 2, 7, 1, '\t\t'],
|
||||
[1, 4, 5, 2, '\tvoid foo() {'],
|
||||
[2, 4, 5, 2, '\t \t//hello'],
|
||||
[2, 4, 5, 2, '\t return 2;'],
|
||||
[1, 4, 5, 2, ' \t}'],
|
||||
[1, 2, 7, 1, ' '],
|
||||
[0, 2, 7, 1, '}']
|
||||
], 4);
|
||||
});
|
||||
|
||||
test('getLineIndentGuide checker.ts', () => {
|
||||
assertIndentGuides([
|
||||
/* 1*/[0, '/// <reference path="binder.ts"/>'],
|
||||
/* 2*/[0, ''],
|
||||
/* 3*/[0, '/* @internal */'],
|
||||
/* 4*/[0, 'namespace ts {'],
|
||||
/* 5*/[1, ' let nextSymbolId = 1;'],
|
||||
/* 6*/[1, ' let nextNodeId = 1;'],
|
||||
/* 7*/[1, ' let nextMergeId = 1;'],
|
||||
/* 8*/[1, ' let nextFlowId = 1;'],
|
||||
/* 9*/[1, ''],
|
||||
/*10*/[1, ' export function getNodeId(node: Node): number {'],
|
||||
/*11*/[2, ' if (!node.id) {'],
|
||||
/*12*/[3, ' node.id = nextNodeId;'],
|
||||
/*13*/[3, ' nextNodeId++;'],
|
||||
/*14*/[2, ' }'],
|
||||
/*15*/[2, ' return node.id;'],
|
||||
/*16*/[1, ' }'],
|
||||
/*17*/[0, '}'],
|
||||
]);
|
||||
/* 1*/[0, 1, 1, 0, '/// <reference path="binder.ts"/>'],
|
||||
/* 2*/[0, 2, 2, 0, ''],
|
||||
/* 3*/[0, 3, 3, 0, '/* @internal */'],
|
||||
/* 4*/[0, 5, 16, 1, 'namespace ts {'],
|
||||
/* 5*/[1, 5, 16, 1, ' let nextSymbolId = 1;'],
|
||||
/* 6*/[1, 5, 16, 1, ' let nextNodeId = 1;'],
|
||||
/* 7*/[1, 5, 16, 1, ' let nextMergeId = 1;'],
|
||||
/* 8*/[1, 5, 16, 1, ' let nextFlowId = 1;'],
|
||||
/* 9*/[1, 5, 16, 1, ''],
|
||||
/*10*/[1, 11, 15, 2, ' export function getNodeId(node: Node): number {'],
|
||||
/*11*/[2, 12, 13, 3, ' if (!node.id) {'],
|
||||
/*12*/[3, 12, 13, 3, ' node.id = nextNodeId;'],
|
||||
/*13*/[3, 12, 13, 3, ' nextNodeId++;'],
|
||||
/*14*/[2, 12, 13, 3, ' }'],
|
||||
/*15*/[2, 11, 15, 2, ' return node.id;'],
|
||||
/*16*/[1, 11, 15, 2, ' }'],
|
||||
/*17*/[0, 5, 16, 1, '}']
|
||||
], 4);
|
||||
});
|
||||
|
||||
test('issue #8425 - Missing indentation lines for first level indentation', () => {
|
||||
assertIndentGuides([
|
||||
[1, '\tindent1'],
|
||||
[2, '\t\tindent2'],
|
||||
[2, '\t\tindent2'],
|
||||
[1, '\tindent1'],
|
||||
]);
|
||||
[1, 2, 3, 2, '\tindent1'],
|
||||
[2, 2, 3, 2, '\t\tindent2'],
|
||||
[2, 2, 3, 2, '\t\tindent2'],
|
||||
[1, 2, 3, 2, '\tindent1']
|
||||
], 4);
|
||||
});
|
||||
|
||||
test('issue #8952 - Indentation guide lines going through text on .yml file', () => {
|
||||
assertIndentGuides([
|
||||
[0, 'properties:'],
|
||||
[1, ' emailAddress:'],
|
||||
[2, ' - bla'],
|
||||
[2, ' - length:'],
|
||||
[3, ' max: 255'],
|
||||
[0, 'getters:'],
|
||||
]);
|
||||
[0, 2, 5, 1, 'properties:'],
|
||||
[1, 3, 5, 2, ' emailAddress:'],
|
||||
[2, 3, 5, 2, ' - bla'],
|
||||
[2, 5, 5, 3, ' - length:'],
|
||||
[3, 5, 5, 3, ' max: 255'],
|
||||
[0, 6, 6, 0, 'getters:']
|
||||
], 4);
|
||||
});
|
||||
|
||||
test('issue #11892 - Indent guides look funny', () => {
|
||||
assertIndentGuides([
|
||||
[0, 'function test(base) {'],
|
||||
[1, '\tswitch (base) {'],
|
||||
[2, '\t\tcase 1:'],
|
||||
[3, '\t\t\treturn 1;'],
|
||||
[2, '\t\tcase 2:'],
|
||||
[3, '\t\t\treturn 2;'],
|
||||
[1, '\t}'],
|
||||
[0, '}'],
|
||||
]);
|
||||
[0, 2, 7, 1, 'function test(base) {'],
|
||||
[1, 3, 6, 2, '\tswitch (base) {'],
|
||||
[2, 4, 4, 3, '\t\tcase 1:'],
|
||||
[3, 4, 4, 3, '\t\t\treturn 1;'],
|
||||
[2, 6, 6, 3, '\t\tcase 2:'],
|
||||
[3, 6, 6, 3, '\t\t\treturn 2;'],
|
||||
[1, 2, 7, 1, '\t}'],
|
||||
[0, 2, 7, 1, '}']
|
||||
], 4);
|
||||
});
|
||||
|
||||
test('issue #12398 - Problem in indent guidelines', () => {
|
||||
assertIndentGuides([
|
||||
[2, '\t\t.bla'],
|
||||
[3, '\t\t\tlabel(for)'],
|
||||
[0, 'include script'],
|
||||
]);
|
||||
[2, 2, 2, 3, '\t\t.bla'],
|
||||
[3, 2, 2, 3, '\t\t\tlabel(for)'],
|
||||
[0, 3, 3, 0, 'include script']
|
||||
], 4);
|
||||
});
|
||||
|
||||
test('issue #49173', () => {
|
||||
@@ -795,4 +766,36 @@ suite('TextModel.getLineIndentGuide', () => {
|
||||
assert.deepEqual(actual, { startLineNumber: 2, endLineNumber: 9, indent: 1 });
|
||||
model.dispose();
|
||||
});
|
||||
|
||||
test('tweaks - no active', () => {
|
||||
assertIndentGuides([
|
||||
[0, 1, 1, 0, 'A'],
|
||||
[0, 2, 2, 0, 'A']
|
||||
], 2);
|
||||
});
|
||||
|
||||
test('tweaks - inside scope', () => {
|
||||
assertIndentGuides([
|
||||
[0, 2, 2, 1, 'A'],
|
||||
[1, 2, 2, 1, ' A']
|
||||
], 2);
|
||||
});
|
||||
|
||||
test('tweaks - scope start', () => {
|
||||
assertIndentGuides([
|
||||
[0, 2, 2, 1, 'A'],
|
||||
[1, 2, 2, 1, ' A'],
|
||||
[0, 2, 2, 1, 'A']
|
||||
], 2);
|
||||
});
|
||||
|
||||
test('tweaks - empty line', () => {
|
||||
assertIndentGuides([
|
||||
[0, 2, 4, 1, 'A'],
|
||||
[1, 2, 4, 1, ' A'],
|
||||
[1, 2, 4, 1, ''],
|
||||
[1, 2, 4, 1, ' A'],
|
||||
[0, 2, 4, 1, 'A']
|
||||
], 2);
|
||||
});
|
||||
});
|
||||
|
||||
@@ -42,7 +42,10 @@ suite('TokensStore', () => {
|
||||
lineText += line.substring(startOffset, firstPipeOffset);
|
||||
const tokenStartCharacter = lineText.length;
|
||||
const tokenLength = secondPipeOffset - firstPipeOffset - 1;
|
||||
const metadata = (SEMANTIC_COLOR << MetadataConsts.FOREGROUND_OFFSET);
|
||||
const metadata = (
|
||||
SEMANTIC_COLOR << MetadataConsts.FOREGROUND_OFFSET
|
||||
| MetadataConsts.SEMANTIC_USE_FOREGROUND
|
||||
);
|
||||
|
||||
if (tokens.length === 0) {
|
||||
baseLine = i + 1;
|
||||
|
||||
@@ -216,4 +216,11 @@ suite('Editor Modes - Link Computer', () => {
|
||||
' https://portal.azure.com '
|
||||
);
|
||||
});
|
||||
|
||||
test('issue #67022: Space as end of hyperlink isn\'t always good idea', () => {
|
||||
assertLink(
|
||||
'aa https://foo.bar/[this is foo site] aa',
|
||||
' https://foo.bar/[this is foo site] '
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
@@ -27,13 +27,13 @@ suite('Editor ViewLayout - ViewLineParts', () => {
|
||||
test('issue #3462: no whitespace shown at the end of a decorated line', () => {
|
||||
|
||||
let result = LineDecorationsNormalizer.normalize('abcabcabcabcabcabcabcabcabcabc', [
|
||||
new LineDecoration(15, 21, 'vs-whitespace', InlineDecorationType.Regular),
|
||||
new LineDecoration(15, 21, 'mtkw', InlineDecorationType.Regular),
|
||||
new LineDecoration(20, 21, 'inline-folded', InlineDecorationType.Regular),
|
||||
]);
|
||||
|
||||
assert.deepEqual(result, [
|
||||
new DecorationSegment(14, 18, 'vs-whitespace'),
|
||||
new DecorationSegment(19, 19, 'vs-whitespace inline-folded')
|
||||
new DecorationSegment(14, 18, 'mtkw'),
|
||||
new DecorationSegment(19, 19, 'mtkw inline-folded')
|
||||
]);
|
||||
});
|
||||
|
||||
|
||||
@@ -195,8 +195,8 @@ suite('viewLineRenderer.renderLine', () => {
|
||||
createPart(48, 12),
|
||||
]);
|
||||
let expectedOutput = [
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:40px">\u2192\u00a0\u00a0\u00a0</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:40px">\u00b7\u00b7\u00b7\u00b7</span>',
|
||||
'<span class="mtkz" style="width:40px">\u2192\u00a0\u00a0\u00a0</span>',
|
||||
'<span class="mtkz" style="width:40px">\u00b7\u00b7\u00b7\u00b7</span>',
|
||||
'<span class="mtk2">export</span>',
|
||||
'<span class="mtk3">\u00a0</span>',
|
||||
'<span class="mtk4">class</span>',
|
||||
@@ -207,8 +207,8 @@ suite('viewLineRenderer.renderLine', () => {
|
||||
'<span class="mtk9">\u00a0</span>',
|
||||
'<span class="mtk10">//\u00a0</span>',
|
||||
'<span class="mtk11">http://test.com</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:20px">\u00b7\u00b7</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:30px">\u00b7\u00b7\u00b7</span>'
|
||||
'<span class="mtkz" style="width:20px">\u00b7\u00b7</span>',
|
||||
'<span class="mtkz" style="width:30px">\u00b7\u00b7\u00b7</span>'
|
||||
].join('');
|
||||
let expectedOffsetsArr = [
|
||||
[0],
|
||||
@@ -897,10 +897,10 @@ suite('viewLineRenderer.renderLine 2', () => {
|
||||
null,
|
||||
[
|
||||
'<span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:40px">\u00b7\u00b7\u00b7\u00b7</span>',
|
||||
'<span class="mtkz" style="width:40px">\u00b7\u00b7\u00b7\u00b7</span>',
|
||||
'<span class="mtk2">He</span>',
|
||||
'<span class="mtk3">llo\u00a0world!</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:40px">\u00b7\u00b7\u00b7\u00b7</span>',
|
||||
'<span class="mtkz" style="width:40px">\u00b7\u00b7\u00b7\u00b7</span>',
|
||||
'</span>',
|
||||
].join('')
|
||||
);
|
||||
@@ -919,12 +919,12 @@ suite('viewLineRenderer.renderLine 2', () => {
|
||||
null,
|
||||
[
|
||||
'<span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:40px">\u00b7\u00b7\u00b7\u00b7</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:40px">\u00b7\u00b7\u00b7\u00b7</span>',
|
||||
'<span class="mtkz" style="width:40px">\u00b7\u00b7\u00b7\u00b7</span>',
|
||||
'<span class="mtkz" style="width:40px">\u00b7\u00b7\u00b7\u00b7</span>',
|
||||
'<span class="mtk2">He</span>',
|
||||
'<span class="mtk3">llo\u00a0world!</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:40px">\u00b7\u00b7\u00b7\u00b7</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:40px">\u00b7\u00b7\u00b7\u00b7</span>',
|
||||
'<span class="mtkz" style="width:40px">\u00b7\u00b7\u00b7\u00b7</span>',
|
||||
'<span class="mtkz" style="width:40px">\u00b7\u00b7\u00b7\u00b7</span>',
|
||||
'</span>',
|
||||
].join('')
|
||||
);
|
||||
@@ -943,11 +943,11 @@ suite('viewLineRenderer.renderLine 2', () => {
|
||||
null,
|
||||
[
|
||||
'<span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:40px">\u2192\u00a0\u00a0\u00a0</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:40px">\u2192\u00a0\u00a0\u00a0</span>',
|
||||
'<span class="mtkz" style="width:40px">\u2192\u00a0\u00a0\u00a0</span>',
|
||||
'<span class="mtkz" style="width:40px">\u2192\u00a0\u00a0\u00a0</span>',
|
||||
'<span class="mtk2">He</span>',
|
||||
'<span class="mtk3">llo\u00a0world!</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:40px">\u2192\u00a0\u00a0\u00a0</span>',
|
||||
'<span class="mtkz" style="width:40px">\u2192\u00a0\u00a0\u00a0</span>',
|
||||
'</span>',
|
||||
].join('')
|
||||
);
|
||||
@@ -966,15 +966,15 @@ suite('viewLineRenderer.renderLine 2', () => {
|
||||
null,
|
||||
[
|
||||
'<span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:40px">\u00b7\u00b7\u2192\u00a0</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:40px">\u2192\u00a0\u00a0\u00a0</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:20px">\u00b7\u00b7</span>',
|
||||
'<span class="mtkz" style="width:40px">\u00b7\u00b7\u2192\u00a0</span>',
|
||||
'<span class="mtkz" style="width:40px">\u2192\u00a0\u00a0\u00a0</span>',
|
||||
'<span class="mtkz" style="width:20px">\u00b7\u00b7</span>',
|
||||
'<span class="mtk2">He</span>',
|
||||
'<span class="mtk3">llo\u00a0world!</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:20px">\u00b7\uffeb</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:40px">\u00b7\u00b7\u2192\u00a0</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:40px">\u00b7\u00b7\u00b7\uffeb</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:40px">\u00b7\u00b7\u00b7\u00b7</span>',
|
||||
'<span class="mtkz" style="width:20px">\u00b7\uffeb</span>',
|
||||
'<span class="mtkz" style="width:40px">\u00b7\u00b7\u2192\u00a0</span>',
|
||||
'<span class="mtkz" style="width:40px">\u00b7\u00b7\u00b7\uffeb</span>',
|
||||
'<span class="mtkz" style="width:40px">\u00b7\u00b7\u00b7\u00b7</span>',
|
||||
'</span>',
|
||||
].join('')
|
||||
);
|
||||
@@ -995,13 +995,13 @@ suite('viewLineRenderer.renderLine 2', () => {
|
||||
[
|
||||
'<span>',
|
||||
'<span class="">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:20px">\u00b7\u00b7</span>',
|
||||
'<span class="mtkz" style="width:20px">\u00b7\u00b7</span>',
|
||||
'<span class="mtk2">He</span>',
|
||||
'<span class="mtk3">llo\u00a0world!</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:20px">\u00b7\uffeb</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:40px">\u00b7\u00b7\u2192\u00a0</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:40px">\u00b7\u00b7\u00b7\uffeb</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:40px">\u00b7\u00b7\u00b7\u00b7</span>',
|
||||
'<span class="mtkz" style="width:20px">\u00b7\uffeb</span>',
|
||||
'<span class="mtkz" style="width:40px">\u00b7\u00b7\u2192\u00a0</span>',
|
||||
'<span class="mtkz" style="width:40px">\u00b7\u00b7\u00b7\uffeb</span>',
|
||||
'<span class="mtkz" style="width:40px">\u00b7\u00b7\u00b7\u00b7</span>',
|
||||
'</span>',
|
||||
].join('')
|
||||
);
|
||||
@@ -1022,10 +1022,10 @@ suite('viewLineRenderer.renderLine 2', () => {
|
||||
[
|
||||
'<span>',
|
||||
'<span class="">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0</span>',
|
||||
'<span class="vs-whitespace">\u00b7\u00b7</span>',
|
||||
'<span class="mtkw">\u00b7\u00b7</span>',
|
||||
'<span class="mtk2">He</span>',
|
||||
'<span class="mtk3">llo\u00a0world!</span>',
|
||||
'<span class="vs-whitespace">\u00b7\uffeb\u00b7\u00b7\u2192\u00a0\u00b7\u00b7\u00b7\uffeb\u00b7\u00b7\u00b7\u00b7</span>',
|
||||
'<span class="mtkw">\u00b7\uffeb\u00b7\u00b7\u2192\u00a0\u00b7\u00b7\u00b7\uffeb\u00b7\u00b7\u00b7\u00b7</span>',
|
||||
'</span>',
|
||||
].join('')
|
||||
);
|
||||
@@ -1046,11 +1046,11 @@ suite('viewLineRenderer.renderLine 2', () => {
|
||||
[
|
||||
'<span>',
|
||||
'<span class="mtk1">it</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:20px">\u00b7\u00b7</span>',
|
||||
'<span class="mtkz" style="width:20px">\u00b7\u00b7</span>',
|
||||
'<span class="mtk1">it</span>',
|
||||
'<span class="mtk2">\u00a0</span>',
|
||||
'<span class="mtk3">it</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:20px">\u00b7\u00b7</span>',
|
||||
'<span class="mtkz" style="width:20px">\u00b7\u00b7</span>',
|
||||
'<span class="mtk3">it</span>',
|
||||
'</span>',
|
||||
].join('')
|
||||
@@ -1071,12 +1071,12 @@ suite('viewLineRenderer.renderLine 2', () => {
|
||||
null,
|
||||
[
|
||||
'<span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:10px">\u00b7</span>',
|
||||
'<span class="mtkz" style="width:10px">\u00b7</span>',
|
||||
'<span class="mtk0">Hel</span>',
|
||||
'<span class="mtk1">lo</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:10px">\u00b7</span>',
|
||||
'<span class="mtkz" style="width:10px">\u00b7</span>',
|
||||
'<span class="mtk2">world!</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:30px">\u2192\u00a0\u00a0</span>',
|
||||
'<span class="mtkz" style="width:30px">\u2192\u00a0\u00a0</span>',
|
||||
'</span>',
|
||||
].join('')
|
||||
);
|
||||
@@ -1118,12 +1118,12 @@ suite('viewLineRenderer.renderLine 2', () => {
|
||||
[new LineRange(0, 14)],
|
||||
[
|
||||
'<span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:10px">\u00b7</span>',
|
||||
'<span class="mtkz" style="width:10px">\u00b7</span>',
|
||||
'<span class="mtk0">Hel</span>',
|
||||
'<span class="mtk1">lo</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:10px">\u00b7</span>',
|
||||
'<span class="mtkz" style="width:10px">\u00b7</span>',
|
||||
'<span class="mtk2">world!</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:30px">\u2192\u00a0\u00a0</span>',
|
||||
'<span class="mtkz" style="width:30px">\u2192\u00a0\u00a0</span>',
|
||||
'</span>',
|
||||
].join('')
|
||||
);
|
||||
@@ -1143,7 +1143,7 @@ suite('viewLineRenderer.renderLine 2', () => {
|
||||
[new LineRange(0, 5)],
|
||||
[
|
||||
'<span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:10px">\u00b7</span>',
|
||||
'<span class="mtkz" style="width:10px">\u00b7</span>',
|
||||
'<span class="mtk0">Hel</span>',
|
||||
'<span class="mtk1">lo</span>',
|
||||
'<span class="mtk2">\u00a0world!\u00a0\u00a0\u00a0</span>',
|
||||
@@ -1167,11 +1167,11 @@ suite('viewLineRenderer.renderLine 2', () => {
|
||||
[new LineRange(0, 5), new LineRange(9, 14)],
|
||||
[
|
||||
'<span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:10px">\u00b7</span>',
|
||||
'<span class="mtkz" style="width:10px">\u00b7</span>',
|
||||
'<span class="mtk0">Hel</span>',
|
||||
'<span class="mtk1">lo</span>',
|
||||
'<span class="mtk2">\u00a0world!</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:30px">\u2192\u00a0\u00a0</span>',
|
||||
'<span class="mtkz" style="width:30px">\u2192\u00a0\u00a0</span>',
|
||||
'</span>',
|
||||
].join('')
|
||||
);
|
||||
@@ -1192,11 +1192,11 @@ suite('viewLineRenderer.renderLine 2', () => {
|
||||
[new LineRange(9, 14), new LineRange(0, 5)],
|
||||
[
|
||||
'<span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:10px">\u00b7</span>',
|
||||
'<span class="mtkz" style="width:10px">\u00b7</span>',
|
||||
'<span class="mtk0">Hel</span>',
|
||||
'<span class="mtk1">lo</span>',
|
||||
'<span class="mtk2">\u00a0world!</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:30px">\u2192\u00a0\u00a0</span>',
|
||||
'<span class="mtkz" style="width:30px">\u2192\u00a0\u00a0</span>',
|
||||
'</span>',
|
||||
].join('')
|
||||
);
|
||||
@@ -1214,9 +1214,9 @@ suite('viewLineRenderer.renderLine 2', () => {
|
||||
[new LineRange(0, 1), new LineRange(1, 2), new LineRange(2, 3)],
|
||||
[
|
||||
'<span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:10px">\u00b7</span>',
|
||||
'<span class="mtkz" style="width:10px">\u00b7</span>',
|
||||
'<span class="mtk0">*</span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:10px">\u00b7</span>',
|
||||
'<span class="mtkz" style="width:10px">\u00b7</span>',
|
||||
'<span class="mtk0">S</span>',
|
||||
'</span>',
|
||||
].join('')
|
||||
@@ -1294,7 +1294,7 @@ suite('viewLineRenderer.renderLine 2', () => {
|
||||
|
||||
let expected = [
|
||||
'<span>',
|
||||
'<span class="vs-whitespace before">\u2192\u00a0\u00a0\u00a0</span>',
|
||||
'<span class="mtkw before">\u2192\u00a0\u00a0\u00a0</span>',
|
||||
'<span class="mtk3">bla</span>',
|
||||
'</span>'
|
||||
].join('');
|
||||
@@ -1329,7 +1329,7 @@ suite('viewLineRenderer.renderLine 2', () => {
|
||||
|
||||
let expected = [
|
||||
'<span>',
|
||||
'<span class="vs-whitespace" style="display:inline-block;width:40px">\u2192\u00a0\u00a0\u00a0</span>',
|
||||
'<span class="mtkz" style="width:40px">\u2192\u00a0\u00a0\u00a0</span>',
|
||||
'<span class="mtk3 before">b</span>',
|
||||
'<span class="mtk3">la</span>',
|
||||
'</span>'
|
||||
@@ -1535,11 +1535,11 @@ suite('viewLineRenderer.renderLine 2', () => {
|
||||
let expected = [
|
||||
'<span>',
|
||||
'<span class="mtk3">asd</span>',
|
||||
'<span class="vs-whitespace">\u00b7</span>',
|
||||
'<span class="mtkw">\u00b7</span>',
|
||||
'<span class="mtk3">=</span>',
|
||||
'<span class="vs-whitespace">\u00b7</span>',
|
||||
'<span class="mtkw">\u00b7</span>',
|
||||
'<span class="mtk3">"擦"</span>',
|
||||
'<span class="vs-whitespace">\u2192\u00a0\u2192\u00a0\u00a0\u00a0</span>',
|
||||
'<span class="mtkw">\u2192\u00a0\u2192\u00a0\u00a0\u00a0</span>',
|
||||
'<span class="mtk3">#asd</span>',
|
||||
'</span>'
|
||||
].join('');
|
||||
|
||||
@@ -111,7 +111,7 @@ suite('Editor ViewModel - SplitLinesCollection', () => {
|
||||
lineBreaksComputerFactory,
|
||||
fontInfo,
|
||||
model.getOptions().tabSize,
|
||||
'monospace',
|
||||
'simple',
|
||||
wrappingInfo.wrappingColumn,
|
||||
wrappingIndent
|
||||
);
|
||||
@@ -753,7 +753,7 @@ suite('SplitLinesCollection', () => {
|
||||
lineBreaksComputerFactory,
|
||||
fontInfo,
|
||||
model.getOptions().tabSize,
|
||||
'monospace',
|
||||
'simple',
|
||||
wrappingInfo.wrappingColumn,
|
||||
wrappingIndent
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user