addressed PR feedback

This commit is contained in:
Vladimir Matveev
2015-11-24 16:41:41 -08:00
parent cccdd44c3d
commit 25cc97bb75
7 changed files with 140 additions and 6 deletions

View File

@@ -0,0 +1,38 @@
//// [tests/cases/compiler/pathMappingBasedModuleResolution11.ts] ////
//// [file1.ts]
import {x} from "./file2" // should be resolved to 'generated/folder1/file2/file.ts'
export var z = x.toExponential();
//// [file.ts]
export {x} from "folder1/file3" // should be resolved to 'folder1/file3.ts'
//// [file3.ts]
export var x = 1;
//// [file3.ts]
import {z as y} from "../folder1/file1" // should be resolved to 'folder1/file1.ts'
let z = y.toLowerCase();
//// [file3.js]
define(["require", "exports"], function (require, exports) {
"use strict";
exports.x = 1;
});
//// [file.js]
define(["require", "exports", "folder1/file3"], function (require, exports, file3_1) {
"use strict";
exports.x = file3_1.x; // should be resolved to 'folder1/file3.ts'
});
//// [file1.js]
define(["require", "exports", "./file2"], function (require, exports, file2_1) {
"use strict";
exports.z = file2_1.x.toExponential();
});
//// [file3.js]
define(["require", "exports", "../folder1/file1"], function (require, exports, file1_1) {
"use strict";
var z = file1_1.z.toLowerCase();
});

View File

@@ -0,0 +1,29 @@
=== tests/cases/compiler/root/folder1/file1.ts ===
import {x} from "./file2" // should be resolved to 'generated/folder1/file2/file.ts'
>x : Symbol(x, Decl(file1.ts, 0, 8))
export var z = x.toExponential();
>z : Symbol(z, Decl(file1.ts, 2, 10))
>x.toExponential : Symbol(Number.toExponential, Decl(lib.d.ts, --, --))
>x : Symbol(x, Decl(file1.ts, 0, 8))
>toExponential : Symbol(Number.toExponential, Decl(lib.d.ts, --, --))
=== tests/cases/compiler/root/generated/folder1/file2/file.ts ===
export {x} from "folder1/file3" // should be resolved to 'folder1/file3.ts'
>x : Symbol(x, Decl(file.ts, 0, 8))
=== tests/cases/compiler/root/folder1/file3.ts ===
export var x = 1;
>x : Symbol(x, Decl(file3.ts, 0, 10))
=== tests/cases/compiler/root/generated/folder2/file3.ts ===
import {z as y} from "../folder1/file1" // should be resolved to 'folder1/file1.ts'
>z : Symbol(y, Decl(file3.ts, 0, 8))
>y : Symbol(y, Decl(file3.ts, 0, 8))
let z = y.toLowerCase();
>z : Symbol(z, Decl(file3.ts, 1, 3))
>y.toLowerCase : Symbol(String.toLowerCase, Decl(lib.d.ts, --, --))
>y : Symbol(y, Decl(file3.ts, 0, 8))
>toLowerCase : Symbol(String.toLowerCase, Decl(lib.d.ts, --, --))

View File

@@ -0,0 +1,32 @@
=== tests/cases/compiler/root/folder1/file1.ts ===
import {x} from "./file2" // should be resolved to 'generated/folder1/file2/file.ts'
>x : number
export var z = x.toExponential();
>z : string
>x.toExponential() : string
>x.toExponential : (fractionDigits?: number) => string
>x : number
>toExponential : (fractionDigits?: number) => string
=== tests/cases/compiler/root/generated/folder1/file2/file.ts ===
export {x} from "folder1/file3" // should be resolved to 'folder1/file3.ts'
>x : number
=== tests/cases/compiler/root/folder1/file3.ts ===
export var x = 1;
>x : number
>1 : number
=== tests/cases/compiler/root/generated/folder2/file3.ts ===
import {z as y} from "../folder1/file1" // should be resolved to 'folder1/file1.ts'
>z : string
>y : string
let z = y.toLowerCase();
>z : string
>y.toLowerCase() : string
>y.toLowerCase : () => string
>y : string
>toLowerCase : () => string

View File

@@ -0,0 +1,34 @@
// @module: amd
// paths\rootDirs is defined in tsconfig.json
// baseUrl is inferred from tsconfig.json
// @filename: root/tsconfig.json
{
"compilerOptions": {
"paths": {
"*": [
"*",
"generated/*/file"
]
},
"rootDirs": [
".",
"./generated"
]
}
}
// @filename: root/folder1/file1.ts
import {x} from "./file2" // should be resolved to 'generated/folder1/file2/file.ts'
export var z = x.toExponential();
// @filename: root/generated/folder1/file2/file.ts
export {x} from "folder1/file3" // should be resolved to 'folder1/file3.ts'
// @filename: root/folder1/file3.ts
export var x = 1;
// @filename: root/generated/folder2/file3.ts
import {z as y} from "../folder1/file1" // should be resolved to 'folder1/file1.ts'
let z = y.toLowerCase();