mirror of
https://github.com/microsoft/TypeScript.git
synced 2026-02-15 03:23:08 -06:00
commit
439ee1eaee
@ -18,7 +18,7 @@
|
||||
/// <reference path='..\compiler\sys.ts' />
|
||||
/// <reference path='external\mocha.d.ts'/>
|
||||
/// <reference path='external\chai.d.ts'/>
|
||||
///<reference path='sourceMapRecorder.ts'/>
|
||||
/// <reference path='sourceMapRecorder.ts'/>
|
||||
|
||||
// this will work in the browser via browserify
|
||||
var _chai: typeof chai = require('chai');
|
||||
@ -598,7 +598,7 @@ module Harness {
|
||||
this.inputFiles.push(file);
|
||||
}
|
||||
|
||||
public compile(options?: ts.CompilerOptions) {
|
||||
public setCompilerOptions(options?: ts.CompilerOptions) {
|
||||
this.compileOptions = options || { noResolve: false };
|
||||
}
|
||||
|
||||
@ -624,7 +624,7 @@ module Harness {
|
||||
settingsCallback(null);
|
||||
}
|
||||
|
||||
this.settings.forEach(setting => {
|
||||
this.settings.forEach(setting => {
|
||||
switch (setting.flag.toLowerCase()) {
|
||||
// "filename", "comments", "declaration", "module", "nolib", "sourcemap", "target", "out", "outDir", "noimplicitany", "noresolve"
|
||||
case "module":
|
||||
@ -692,6 +692,10 @@ module Harness {
|
||||
case 'declaration':
|
||||
options.declaration = !!setting.value;
|
||||
break;
|
||||
case 'newline':
|
||||
case 'newlines':
|
||||
sys.newLine = setting.value;
|
||||
break;
|
||||
|
||||
case 'mapsourcefiles':
|
||||
case 'maproot':
|
||||
@ -753,6 +757,9 @@ module Harness {
|
||||
// Covert the source Map data into the baseline
|
||||
result.updateSourceMapRecord(program, sourceMapData);
|
||||
onComplete(result);
|
||||
|
||||
// reset what newline means in case the last test changed it
|
||||
sys.newLine = '\r\n';
|
||||
return options;
|
||||
}
|
||||
}
|
||||
@ -891,7 +898,7 @@ module Harness {
|
||||
var optionRegex = /^[\/]{2}\s*@(\w+)\s*:\s*(\S*)/gm; // multiple matches on multiple lines
|
||||
|
||||
// List of allowed metadata names
|
||||
var fileMetadataNames = ["filename", "comments", "declaration", "module", "nolib", "sourcemap", "target", "out", "outDir", "noimplicitany", "noresolve"];
|
||||
var fileMetadataNames = ["filename", "comments", "declaration", "module", "nolib", "sourcemap", "target", "out", "outDir", "noimplicitany", "noresolve", "newline", "newlines"];
|
||||
|
||||
function extractCompilerSettings(content: string): CompilerSetting[] {
|
||||
|
||||
@ -1119,7 +1126,7 @@ module Harness {
|
||||
return filePath.indexOf('lib.d.ts') >= 0 || filePath.indexOf('lib.core.d.ts') >= 0;
|
||||
}
|
||||
|
||||
if (Error) (<any>Error).stackTraceLimit = 100;
|
||||
if (Error) (<any>Error).stackTraceLimit = 1;
|
||||
}
|
||||
|
||||
// TODO: not sure why Utils.evalFile isn't working with this, eventually will concat it like old compiler instead of eval
|
||||
|
||||
@ -104,4 +104,6 @@ if (runners.length === 0) {
|
||||
// runners.push(new GeneratedFourslashRunner());
|
||||
}
|
||||
|
||||
sys.newLine = '\r\n';
|
||||
|
||||
runTests(runners);
|
||||
|
||||
@ -143,7 +143,7 @@ module RWC {
|
||||
harnessCompiler.addInputFile({ unitName: resolvedPath, content: content });
|
||||
});
|
||||
|
||||
harnessCompiler.compile();
|
||||
harnessCompiler.setCompilerOptions();
|
||||
|
||||
// Emit the results
|
||||
harnessCompiler.emitAll(emitterIOHost);
|
||||
|
||||
@ -37,7 +37,7 @@ class UnitTestRunner extends RunnerBase {
|
||||
return { unitName: test, content: Harness.IO.readFile(test) }
|
||||
});
|
||||
harnessCompiler.addInputFiles(toBeAdded);
|
||||
harnessCompiler.compile({ noResolve: true });
|
||||
harnessCompiler.setCompilerOptions({ noResolve: true });
|
||||
|
||||
var stdout = new Harness.Compiler.EmitterIOHost();
|
||||
var emitDiagnostics = harnessCompiler.emitAll(stdout);
|
||||
|
||||
@ -234,5 +234,5 @@
|
||||
interface B extends A { }
|
||||
var x: B = { };
|
||||
~
|
||||
!!! Type '{}' is not assignable to type 'B':
|
||||
!!! Property 'x' is missing in type '{}'.
|
||||
!!! Type '{}' is not assignable to type 'B':\n Property 'x' is missing in type '{}'.
|
||||
|
||||
@ -228,198 +228,8 @@ Point.prototype = {
|
||||
|
||||
interface A { x: string; }
|
||||
interface B extends A { }
|
||||
var x: B = { };
|
||||
var x: B = { };
|
||||
|
||||
|
||||
//// [contextualTyping.js]
|
||||
var C1T5 = (function () {
|
||||
function C1T5() {
|
||||
this.foo = function (i) {
|
||||
return i;
|
||||
};
|
||||
}
|
||||
return C1T5;
|
||||
})();
|
||||
var C2T5;
|
||||
(function (C2T5) {
|
||||
C2T5.foo = function (i) {
|
||||
return i;
|
||||
};
|
||||
})(C2T5 || (C2T5 = {}));
|
||||
var c3t1 = (function (s) {
|
||||
return s;
|
||||
});
|
||||
var c3t2 = ({
|
||||
n: 1
|
||||
});
|
||||
var c3t3 = [];
|
||||
var c3t4 = function () {
|
||||
return ({});
|
||||
};
|
||||
var c3t5 = function (n) {
|
||||
return ({});
|
||||
};
|
||||
var c3t6 = function (n, s) {
|
||||
return ({});
|
||||
};
|
||||
var c3t7 = function (n) {
|
||||
return n;
|
||||
};
|
||||
var c3t8 = function (n) {
|
||||
return n;
|
||||
};
|
||||
var c3t9 = [[], []];
|
||||
var c3t10 = [({}), ({})];
|
||||
var c3t11 = [function (n, s) {
|
||||
return s;
|
||||
}];
|
||||
var c3t12 = {
|
||||
foo: ({})
|
||||
};
|
||||
var c3t13 = ({
|
||||
f: function (i, s) {
|
||||
return s;
|
||||
}
|
||||
});
|
||||
var c3t14 = ({
|
||||
a: []
|
||||
});
|
||||
var C4T5 = (function () {
|
||||
function C4T5() {
|
||||
this.foo = function (i, s) {
|
||||
return s;
|
||||
};
|
||||
}
|
||||
return C4T5;
|
||||
})();
|
||||
var C5T5;
|
||||
(function (C5T5) {
|
||||
C5T5.foo;
|
||||
C5T5.foo = function (i, s) {
|
||||
return s;
|
||||
};
|
||||
})(C5T5 || (C5T5 = {}));
|
||||
var c6t5;
|
||||
c6t5 = function (n) {
|
||||
return ({});
|
||||
};
|
||||
var c7t2;
|
||||
c7t2[0] = ({ n: 1 });
|
||||
var objc8 = ({});
|
||||
objc8.t1 = (function (s) {
|
||||
return s;
|
||||
});
|
||||
objc8.t2 = ({
|
||||
n: 1
|
||||
});
|
||||
objc8.t3 = [];
|
||||
objc8.t4 = function () {
|
||||
return ({});
|
||||
};
|
||||
objc8.t5 = function (n) {
|
||||
return ({});
|
||||
};
|
||||
objc8.t6 = function (n, s) {
|
||||
return ({});
|
||||
};
|
||||
objc8.t7 = function (n) {
|
||||
return n;
|
||||
};
|
||||
objc8.t8 = function (n) {
|
||||
return n;
|
||||
};
|
||||
objc8.t9 = [[], []];
|
||||
objc8.t10 = [({}), ({})];
|
||||
objc8.t11 = [function (n, s) {
|
||||
return s;
|
||||
}];
|
||||
objc8.t12 = {
|
||||
foo: ({})
|
||||
};
|
||||
objc8.t13 = ({
|
||||
f: function (i, s) {
|
||||
return s;
|
||||
}
|
||||
});
|
||||
objc8.t14 = ({
|
||||
a: []
|
||||
});
|
||||
function c9t5(f) {
|
||||
}
|
||||
;
|
||||
c9t5(function (n) {
|
||||
return ({});
|
||||
});
|
||||
var c10t5 = function () {
|
||||
return function (n) {
|
||||
return ({});
|
||||
};
|
||||
};
|
||||
var C11t5 = (function () {
|
||||
function C11t5(f) {
|
||||
}
|
||||
return C11t5;
|
||||
})();
|
||||
;
|
||||
var i = new C11t5(function (n) {
|
||||
return ({});
|
||||
});
|
||||
var c12t1 = (function (s) {
|
||||
return s;
|
||||
});
|
||||
var c12t2 = ({
|
||||
n: 1
|
||||
});
|
||||
var c12t3 = [];
|
||||
var c12t4 = function () {
|
||||
return ({});
|
||||
};
|
||||
var c12t5 = function (n) {
|
||||
return ({});
|
||||
};
|
||||
var c12t6 = function (n, s) {
|
||||
return ({});
|
||||
};
|
||||
var c12t7 = function (n) {
|
||||
return n;
|
||||
};
|
||||
var c12t8 = function (n) {
|
||||
return n;
|
||||
};
|
||||
var c12t9 = [[], []];
|
||||
var c12t10 = [({}), ({})];
|
||||
var c12t11 = [function (n, s) {
|
||||
return s;
|
||||
}];
|
||||
var c12t12 = {
|
||||
foo: ({})
|
||||
};
|
||||
var c12t13 = ({
|
||||
f: function (i, s) {
|
||||
return s;
|
||||
}
|
||||
});
|
||||
var c12t14 = ({
|
||||
a: []
|
||||
});
|
||||
function EF1(a, b) {
|
||||
return a + b;
|
||||
}
|
||||
var efv = EF1(1, 2);
|
||||
function Point(x, y) {
|
||||
this.x = x;
|
||||
this.y = y;
|
||||
return this;
|
||||
}
|
||||
Point.origin = new Point(0, 0);
|
||||
Point.prototype.add = function (dx, dy) {
|
||||
return new Point(this.x + dx, this.y + dy);
|
||||
};
|
||||
Point.prototype = {
|
||||
x: 0,
|
||||
y: 0,
|
||||
add: function (dx, dy) {
|
||||
return new Point(this.x + dx, this.y + dy);
|
||||
}
|
||||
};
|
||||
var x = {};
|
||||
//# sourceMappingURL=contextualTyping.js.map
|
||||
var C1T5 = (function () {\n function C1T5() {\n this.foo = function (i) {\n return i;\n };\n }\n return C1T5;\n})();\nvar C2T5;\n(function (C2T5) {\n C2T5.foo = function (i) {\n return i;\n };\n})(C2T5 || (C2T5 = {}));\nvar c3t1 = (function (s) {\n return s;\n});\nvar c3t2 = ({\n n: 1\n});\nvar c3t3 = [];\nvar c3t4 = function () {\n return ({});\n};\nvar c3t5 = function (n) {\n return ({});\n};\nvar c3t6 = function (n, s) {\n return ({});\n};\nvar c3t7 = function (n) {\n return n;\n};\nvar c3t8 = function (n) {\n return n;\n};\nvar c3t9 = [[], []];\nvar c3t10 = [({}), ({})];\nvar c3t11 = [function (n, s) {\n return s;\n}];\nvar c3t12 = {\n foo: ({})\n};\nvar c3t13 = ({\n f: function (i, s) {\n return s;\n }\n});\nvar c3t14 = ({\n a: []\n});\nvar C4T5 = (function () {\n function C4T5() {\n this.foo = function (i, s) {\n return s;\n };\n }\n return C4T5;\n})();\nvar C5T5;\n(function (C5T5) {\n C5T5.foo;\n C5T5.foo = function (i, s) {\n return s;\n };\n})(C5T5 || (C5T5 = {}));\nvar c6t5;\nc6t5 = function (n) {\n return ({});\n};\nvar c7t2;\nc7t2[0] = ({ n: 1 });\nvar objc8 = ({});\nobjc8.t1 = (function (s) {\n return s;\n});\nobjc8.t2 = ({\n n: 1\n});\nobjc8.t3 = [];\nobjc8.t4 = function () {\n return ({});\n};\nobjc8.t5 = function (n) {\n return ({});\n};\nobjc8.t6 = function (n, s) {\n return ({});\n};\nobjc8.t7 = function (n) {\n return n;\n};\nobjc8.t8 = function (n) {\n return n;\n};\nobjc8.t9 = [[], []];\nobjc8.t10 = [({}), ({})];\nobjc8.t11 = [function (n, s) {\n return s;\n}];\nobjc8.t12 = {\n foo: ({})\n};\nobjc8.t13 = ({\n f: function (i, s) {\n return s;\n }\n});\nobjc8.t14 = ({\n a: []\n});\nfunction c9t5(f) {\n}\n;\nc9t5(function (n) {\n return ({});\n});\nvar c10t5 = function () {\n return function (n) {\n return ({});\n };\n};\nvar C11t5 = (function () {\n function C11t5(f) {\n }\n return C11t5;\n})();\n;\nvar i = new C11t5(function (n) {\n return ({});\n});\nvar c12t1 = (function (s) {\n return s;\n});\nvar c12t2 = ({\n n: 1\n});\nvar c12t3 = [];\nvar c12t4 = function () {\n return ({});\n};\nvar c12t5 = function (n) {\n return ({});\n};\nvar c12t6 = function (n, s) {\n return ({});\n};\nvar c12t7 = function (n) {\n return n;\n};\nvar c12t8 = function (n) {\n return n;\n};\nvar c12t9 = [[], []];\nvar c12t10 = [({}), ({})];\nvar c12t11 = [function (n, s) {\n return s;\n}];\nvar c12t12 = {\n foo: ({})\n};\nvar c12t13 = ({\n f: function (i, s) {\n return s;\n }\n});\nvar c12t14 = ({\n a: []\n});\nfunction EF1(a, b) {\n return a + b;\n}\nvar efv = EF1(1, 2);\nfunction Point(x, y) {\n this.x = x;\n this.y = y;\n return this;\n}\nPoint.origin = new Point(0, 0);\nPoint.prototype.add = function (dx, dy) {\n return new Point(this.x + dx, this.y + dy);\n};\nPoint.prototype = {\n x: 0,\n y: 0,\n add: function (dx, dy) {\n return new Point(this.x + dx, this.y + dy);\n }\n};\nvar x = {};\n//# sourceMappingURL=contextualTyping.js.map
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,3 +1,4 @@
|
||||
// @newline: \n
|
||||
// @sourcemap: true
|
||||
// DEFAULT INTERFACES
|
||||
interface IFoo {
|
||||
@ -228,4 +229,4 @@ Point.prototype = {
|
||||
|
||||
interface A { x: string; }
|
||||
interface B extends A { }
|
||||
var x: B = { };
|
||||
var x: B = { };
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user