[Transforms] Fix emit comment in wrong position when transforms export declaration to require statement (#8321)

* Fix emit comment in wrong location when transform export declaration to require statement

* Add tests and baselines

* Add tests and baselines

* Update baselines
This commit is contained in:
Yui
2016-04-26 20:09:26 -07:00
parent 5cdb78d126
commit fef3e97c34
5 changed files with 100 additions and 3 deletions

View File

@@ -423,10 +423,10 @@ namespace ts {
createVariableDeclarationList([
createVariableDeclaration(
generatedName,
createRequireCall(node),
/*location*/ node
createRequireCall(node)
)
])
]),
/*location*/ node
)
);
}

View File

@@ -0,0 +1,36 @@
//// [tests/cases/compiler/commentsOnRequireStatement.ts] ////
//// [0.ts]
export var subject = 10;
//// [1.ts]
export var subject1 = 10;
//// [2.ts]
/* blah0 */
// blah
// blah
// blah
export {subject} from './0';
/* blah1 */
export {subject1} from './1';
//// [0.js]
"use strict";
exports.subject = 10;
//// [1.js]
"use strict";
exports.subject1 = 10;
//// [2.js]
"use strict";
/* blah0 */
// blah
// blah
// blah
var _0_1 = require("./0");
exports.subject = _0_1.subject;
/* blah1 */
var _1_1 = require("./1");
exports.subject1 = _1_1.subject1;

View File

@@ -0,0 +1,21 @@
=== tests/cases/compiler/0.ts ===
export var subject = 10;
>subject : Symbol(subject, Decl(0.ts, 1, 10))
=== tests/cases/compiler/1.ts ===
export var subject1 = 10;
>subject1 : Symbol(subject1, Decl(1.ts, 0, 10))
=== tests/cases/compiler/2.ts ===
/* blah0 */
// blah
// blah
// blah
export {subject} from './0';
>subject : Symbol(subject, Decl(2.ts, 4, 8))
/* blah1 */
export {subject1} from './1';
>subject1 : Symbol(subject1, Decl(2.ts, 6, 8))

View File

@@ -0,0 +1,23 @@
=== tests/cases/compiler/0.ts ===
export var subject = 10;
>subject : number
>10 : number
=== tests/cases/compiler/1.ts ===
export var subject1 = 10;
>subject1 : number
>10 : number
=== tests/cases/compiler/2.ts ===
/* blah0 */
// blah
// blah
// blah
export {subject} from './0';
>subject : number
/* blah1 */
export {subject1} from './1';
>subject1 : number

View File

@@ -0,0 +1,17 @@
// @target: es5
// @module: commonjs
// @Filename: 0.ts
export var subject = 10;
// @Filename: 1.ts
export var subject1 = 10;
// @Filename: 2.ts
/* blah0 */
// blah
// blah
// blah
export {subject} from './0';
/* blah1 */
export {subject1} from './1';