Merge VS Code 1.21 source code (#1067)

* Initial VS Code 1.21 file copy with patches

* A few more merges

* Post npm install

* Fix batch of build breaks

* Fix more build breaks

* Fix more build errors

* Fix more build breaks

* Runtime fixes 1

* Get connection dialog working with some todos

* Fix a few packaging issues

* Copy several node_modules to package build to fix loader issues

* Fix breaks from master

* A few more fixes

* Make tests pass

* First pass of license header updates

* Second pass of license header updates

* Fix restore dialog issues

* Remove add additional themes menu items

* fix select box issues where the list doesn't show up

* formatting

* Fix editor dispose issue

* Copy over node modules to correct location on all platforms
This commit is contained in:
Karl Burtram
2018-04-04 15:27:51 -07:00
committed by GitHub
parent 5fba3e31b4
commit dafb780987
9412 changed files with 141255 additions and 98813 deletions

View File

@@ -21,7 +21,6 @@ suite('ViewModel', () => {
viewModel.setViewport(1, 1, 1);
model.applyEdits([{
identifier: null,
range: new Range(1, 1, 1, 1),
text: [
'line01',
@@ -34,18 +33,84 @@ suite('ViewModel', () => {
'line08',
'line09',
'line10',
].join('\n'),
forceMoveMarkers: false
].join('\n')
}]);
assert.equal(viewModel.getLineCount(), 10);
});
});
function assertGetPlainTextToCopy(text: string[], ranges: Range[], emptySelectionClipboard: boolean, expected: string): void {
test('issue #44805: SplitLinesCollection: attempt to access a \'newer\' model', () => {
const text = [''];
testViewModel(text, {}, (viewModel, model) => {
assert.equal(viewModel.getLineCount(), 1);
model.pushEditOperations([], [{
range: new Range(1, 1, 1, 1),
text: '\ninsert1'
}], () => ([]));
model.pushEditOperations([], [{
range: new Range(1, 1, 1, 1),
text: '\ninsert2'
}], () => ([]));
model.pushEditOperations([], [{
range: new Range(1, 1, 1, 1),
text: '\ninsert3'
}], () => ([]));
let viewLineCount: number[] = [];
viewLineCount.push(viewModel.getLineCount());
viewModel.addEventListener((events) => {
// Access the view model
viewLineCount.push(viewModel.getLineCount());
});
model.undo();
viewLineCount.push(viewModel.getLineCount());
assert.deepEqual(viewLineCount, [4, 1, 1, 1]);
});
});
test('issue #44805: No visible lines via API call', () => {
const text = [
'line1',
'line2',
'line3'
];
testViewModel(text, {}, (viewModel, model) => {
assert.equal(viewModel.getLineCount(), 3);
viewModel.setHiddenAreas([new Range(1, 1, 3, 1)]);
assert.ok(viewModel.getVisibleRanges() !== null);
});
});
test('issue #44805: No visible lines via undoing', () => {
const text = [
''
];
testViewModel(text, {}, (viewModel, model) => {
assert.equal(viewModel.getLineCount(), 1);
model.pushEditOperations([], [{
range: new Range(1, 1, 1, 1),
text: 'line1\nline2\nline3'
}], () => ([]));
viewModel.setHiddenAreas([new Range(1, 1, 1, 1)]);
assert.equal(viewModel.getLineCount(), 2);
model.undo();
assert.ok(viewModel.getVisibleRanges() !== null);
});
});
function assertGetPlainTextToCopy(text: string[], ranges: Range[], emptySelectionClipboard: boolean, expected: string | string[]): void {
testViewModel(text, {}, (viewModel, model) => {
let actual = viewModel.getPlainTextToCopy(ranges, emptySelectionClipboard);
assert.equal(actual, expected);
assert.deepEqual(actual, expected);
});
}
@@ -157,7 +222,7 @@ suite('ViewModel', () => {
new Range(3, 2, 3, 6),
],
false,
'ine2\nine3'
['ine2', 'ine3']
);
});
@@ -169,7 +234,7 @@ suite('ViewModel', () => {
new Range(2, 2, 2, 6),
],
false,
'ine2\nine3'
['ine2', 'ine3']
);
});