Refresh master with initial release/0.24 snapshot (#332)

* Initial port of release/0.24 source code

* Fix additional headers

* Fix a typo in launch.json
This commit is contained in:
Karl Burtram
2017-12-15 15:38:57 -08:00
committed by GitHub
parent 271b3a0b82
commit 6ad0df0e3e
7118 changed files with 107999 additions and 56466 deletions

View File

@@ -0,0 +1,51 @@
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the Source EULA. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
'use strict';
import * as assert from 'assert';
import { getFirstFrame } from 'vs/base/node/console';
import { normalize } from 'path';
suite('Console', () => {
test('getFirstFrame', function () {
let stack = 'at vscode.commands.registerCommand (/Users/someone/Desktop/test-ts/out/src/extension.js:18:17)';
let frame = getFirstFrame(stack);
assert.equal(frame.uri.fsPath, normalize('/Users/someone/Desktop/test-ts/out/src/extension.js'));
assert.equal(frame.line, 18);
assert.equal(frame.column, 17);
stack = 'at /Users/someone/Desktop/test-ts/out/src/extension.js:18:17';
frame = getFirstFrame(stack);
assert.equal(frame.uri.fsPath, normalize('/Users/someone/Desktop/test-ts/out/src/extension.js'));
assert.equal(frame.line, 18);
assert.equal(frame.column, 17);
stack = 'at c:\\Users\\someone\\Desktop\\end-js\\extension.js:18:17';
frame = getFirstFrame(stack);
assert.equal(frame.uri.fsPath, 'c:\\Users\\someone\\Desktop\\end-js\\extension.js');
assert.equal(frame.line, 18);
assert.equal(frame.column, 17);
stack = 'at e.$executeContributedCommand(c:\\Users\\someone\\Desktop\\end-js\\extension.js:18:17)';
frame = getFirstFrame(stack);
assert.equal(frame.uri.fsPath, 'c:\\Users\\someone\\Desktop\\end-js\\extension.js');
assert.equal(frame.line, 18);
assert.equal(frame.column, 17);
stack = 'at /Users/someone/Desktop/test-ts/out/src/extension.js:18:17\nat /Users/someone/Desktop/test-ts/out/src/other.js:28:27\nat /Users/someone/Desktop/test-ts/out/src/more.js:38:37';
frame = getFirstFrame(stack);
assert.equal(frame.uri.fsPath, normalize('/Users/someone/Desktop/test-ts/out/src/extension.js'));
assert.equal(frame.line, 18);
assert.equal(frame.column, 17);
});
});

View File

@@ -16,6 +16,8 @@ import strings = require('vs/base/common/strings');
import extfs = require('vs/base/node/extfs');
import { onError } from 'vs/base/test/common/utils';
const ignore = () => { };
suite('Extfs', () => {
test('mkdirp', function (done: () => void) {
@@ -30,7 +32,7 @@ suite('Extfs', () => {
assert.ok(fs.existsSync(newDir));
extfs.del(parentDir, os.tmpdir(), () => { }, done);
extfs.del(parentDir, os.tmpdir(), done, ignore);
}); // 493 = 0755
});
@@ -160,7 +162,7 @@ suite('Extfs', () => {
extfs.readdir(path.join(parentDir, 'extfs', id), (error, children) => {
assert.equal(children.some(n => n === 'öäü'), true); // Mac always converts to NFD, so
extfs.del(parentDir, os.tmpdir(), () => { }, done);
extfs.del(parentDir, os.tmpdir(), done, ignore);
});
}); // 493 = 0755
} else {
@@ -197,7 +199,7 @@ suite('Extfs', () => {
assert.equal(fs.readFileSync(testFile), largeString);
extfs.del(parentDir, os.tmpdir(), () => { }, done);
extfs.del(parentDir, os.tmpdir(), done, ignore);
});
});
});
@@ -228,7 +230,7 @@ suite('Extfs', () => {
assert.equal(real, newDir);
}
extfs.del(parentDir, os.tmpdir(), () => { }, done);
extfs.del(parentDir, os.tmpdir(), done, ignore);
});
});
@@ -243,7 +245,7 @@ suite('Extfs', () => {
assert.ok(realpath);
assert.ok(!error);
extfs.del(parentDir, os.tmpdir(), () => { }, done);
extfs.del(parentDir, os.tmpdir(), done, ignore);
});
});
});
@@ -262,7 +264,7 @@ suite('Extfs', () => {
}
assert.ok(realpath);
extfs.del(parentDir, os.tmpdir(), () => { }, done);
extfs.del(parentDir, os.tmpdir(), done, ignore);
});
});
});

View File

@@ -7,6 +7,7 @@
import * as assert from 'assert';
import * as path from 'path';
import glob = require('vs/base/common/glob');
import { isWindows } from 'vs/base/common/platform';
suite('Glob', () => {
@@ -884,4 +885,56 @@ suite('Glob', () => {
// Later expressions take precedence
assert.deepEqual(glob.mergeExpressions({ 'a': true, 'b': false, 'c': true }, { 'a': false, 'b': true }), { 'a': false, 'b': true, 'c': true });
});
test('relative pattern - glob star', function () {
if (isWindows) {
let p = { base: 'C:\\DNXConsoleApp\\foo', pattern: '**/*.cs' };
assert(glob.match(p, 'C:\\DNXConsoleApp\\foo\\Program.cs'));
assert(glob.match(p, 'C:\\DNXConsoleApp\\foo\\bar\\Program.cs'));
assert(!glob.match(p, 'C:\\DNXConsoleApp\\foo\\Program.ts'));
assert(!glob.match(p, 'C:\\DNXConsoleApp\\Program.cs'));
assert(!glob.match(p, 'C:\\other\\DNXConsoleApp\\foo\\Program.ts'));
} else {
let p: glob.IRelativePattern = { base: '/DNXConsoleApp/foo', pattern: '**/*.cs' };
assert(glob.match(p, '/DNXConsoleApp/foo/Program.cs'));
assert(glob.match(p, '/DNXConsoleApp/foo/bar/Program.cs'));
assert(!glob.match(p, '/DNXConsoleApp/foo/Program.ts'));
assert(!glob.match(p, '/DNXConsoleApp/Program.cs'));
assert(!glob.match(p, '/other/DNXConsoleApp/foo/Program.ts'));
}
});
test('relative pattern - single star', function () {
if (isWindows) {
let p = { base: 'C:\\DNXConsoleApp\\foo', pattern: '*.cs' };
assert(glob.match(p, 'C:\\DNXConsoleApp\\foo\\Program.cs'));
assert(!glob.match(p, 'C:\\DNXConsoleApp\\foo\\bar\\Program.cs'));
assert(!glob.match(p, 'C:\\DNXConsoleApp\\foo\\Program.ts'));
assert(!glob.match(p, 'C:\\DNXConsoleApp\\Program.cs'));
assert(!glob.match(p, 'C:\\other\\DNXConsoleApp\\foo\\Program.ts'));
} else {
let p: glob.IRelativePattern = { base: '/DNXConsoleApp/foo', pattern: '*.cs' };
assert(glob.match(p, '/DNXConsoleApp/foo/Program.cs'));
assert(!glob.match(p, '/DNXConsoleApp/foo/bar/Program.cs'));
assert(!glob.match(p, '/DNXConsoleApp/foo/Program.ts'));
assert(!glob.match(p, '/DNXConsoleApp/Program.cs'));
assert(!glob.match(p, '/other/DNXConsoleApp/foo/Program.ts'));
}
});
test('relative pattern - single star with path', function () {
if (isWindows) {
let p = { base: 'C:\\DNXConsoleApp\\foo', pattern: 'something/*.cs' };
assert(glob.match(p, 'C:\\DNXConsoleApp\\foo\\something\\Program.cs'));
assert(!glob.match(p, 'C:\\DNXConsoleApp\\foo\\Program.cs'));
} else {
let p: glob.IRelativePattern = { base: '/DNXConsoleApp/foo', pattern: 'something/*.cs' };
assert(glob.match(p, '/DNXConsoleApp/foo/something/Program.cs'));
assert(!glob.match(p, '/DNXConsoleApp/foo/Program.cs'));
}
});
test('pattern with "base" does not explode - #36081', function () {
assert.ok(glob.match({ 'base': true }, 'base'));
});
});