From 4f1640d8e1f3d81975230130600042752a8de0a1 Mon Sep 17 00:00:00 2001 From: Sheetal Nandi Date: Sat, 24 Feb 2018 10:15:32 -0800 Subject: [PATCH] Verify the output file paths for the json module emit --- .../baselines/reference/requireOfJsonFile.js | 4 +- .../reference/requireOfJsonFileNonRelative.js | 2 +- ...reOfJsonFileNonRelativeWithoutExtension.js | 2 +- ...NonRelativeWithoutExtensionResolvesToTs.js | 4 +- .../reference/requireOfJsonFileTypes.js | 14 +++--- .../reference/requireOfJsonFileWithAmd.js | 2 +- .../requireOfJsonFileWithEmptyObject.js | 4 +- ...uireOfJsonFileWithEmptyObjectWithErrors.js | 4 +- .../reference/requireOfJsonFileWithErrors.js | 4 +- .../requireOfJsonFileWithNoContent.js | 4 +- .../requireOfJsonFileWithoutAllowJs.js | 4 +- .../requireOfJsonFileWithoutExtension.js | 4 +- ...eOfJsonFileWithoutExtensionResolvesToTs.js | 6 +-- .../requireOfJsonFileWithoutOutDir.errors.txt | 20 +++++++++ .../requireOfJsonFileWithoutOutDir.js | 27 +++++++++++ .../requireOfJsonFileWithoutOutDir.symbols | 38 ++++++++++++++++ .../requireOfJsonFileWithoutOutDir.types | 45 +++++++++++++++++++ tests/cases/compiler/requireOfJsonFile.ts | 1 + .../compiler/requireOfJsonFileNonRelative.ts | 1 + ...reOfJsonFileNonRelativeWithoutExtension.ts | 1 + ...NonRelativeWithoutExtensionResolvesToTs.ts | 1 + .../cases/compiler/requireOfJsonFileTypes.ts | 1 + .../compiler/requireOfJsonFileWithAmd.ts | 1 + .../requireOfJsonFileWithEmptyObject.ts | 1 + ...uireOfJsonFileWithEmptyObjectWithErrors.ts | 1 + .../compiler/requireOfJsonFileWithErrors.ts | 1 + .../requireOfJsonFileWithNoContent.ts | 1 + .../requireOfJsonFileWithoutAllowJs.ts | 1 + .../requireOfJsonFileWithoutExtension.ts | 1 + ...eOfJsonFileWithoutExtensionResolvesToTs.ts | 1 + .../requireOfJsonFileWithoutOutDir.ts | 17 +++++++ 31 files changed, 189 insertions(+), 29 deletions(-) create mode 100644 tests/baselines/reference/requireOfJsonFileWithoutOutDir.errors.txt create mode 100644 tests/baselines/reference/requireOfJsonFileWithoutOutDir.js create mode 100644 tests/baselines/reference/requireOfJsonFileWithoutOutDir.symbols create mode 100644 tests/baselines/reference/requireOfJsonFileWithoutOutDir.types create mode 100644 tests/cases/compiler/requireOfJsonFileWithoutOutDir.ts diff --git a/tests/baselines/reference/requireOfJsonFile.js b/tests/baselines/reference/requireOfJsonFile.js index ee6cf71004..a93a52b5e3 100644 --- a/tests/baselines/reference/requireOfJsonFile.js +++ b/tests/baselines/reference/requireOfJsonFile.js @@ -15,12 +15,12 @@ if (x) { "b": "hello" } -//// [b.json] +//// [out/b.json] { "a": true, "b": "hello" } -//// [file1.js] +//// [out/file1.js] "use strict"; exports.__esModule = true; var b1 = require("./b.json"); diff --git a/tests/baselines/reference/requireOfJsonFileNonRelative.js b/tests/baselines/reference/requireOfJsonFileNonRelative.js index 0b78328c70..35253e04c9 100644 --- a/tests/baselines/reference/requireOfJsonFileNonRelative.js +++ b/tests/baselines/reference/requireOfJsonFileNonRelative.js @@ -21,7 +21,7 @@ if (x) { "b": "hello" } -//// [file1.js] +//// [out/file1.js] "use strict"; exports.__esModule = true; var b1 = require("b.json"); diff --git a/tests/baselines/reference/requireOfJsonFileNonRelativeWithoutExtension.js b/tests/baselines/reference/requireOfJsonFileNonRelativeWithoutExtension.js index c476d43efc..7a85dff350 100644 --- a/tests/baselines/reference/requireOfJsonFileNonRelativeWithoutExtension.js +++ b/tests/baselines/reference/requireOfJsonFileNonRelativeWithoutExtension.js @@ -22,6 +22,6 @@ import e = require("e"); // Should fail "b": "hello" } -//// [file1.js] +//// [out/file1.js] "use strict"; exports.__esModule = true; diff --git a/tests/baselines/reference/requireOfJsonFileNonRelativeWithoutExtensionResolvesToTs.js b/tests/baselines/reference/requireOfJsonFileNonRelativeWithoutExtensionResolvesToTs.js index b4b8a449b2..03dd4ab513 100644 --- a/tests/baselines/reference/requireOfJsonFileNonRelativeWithoutExtensionResolvesToTs.js +++ b/tests/baselines/reference/requireOfJsonFileNonRelativeWithoutExtensionResolvesToTs.js @@ -13,10 +13,10 @@ let fnumber: number = f; //// [f.ts] export = 10; -//// [f.js] +//// [out/node_modules/f.js] "use strict"; module.exports = 10; -//// [file1.js] +//// [out/projects/file1.js] "use strict"; exports.__esModule = true; var f = require("f"); // should work to f.ts diff --git a/tests/baselines/reference/requireOfJsonFileTypes.js b/tests/baselines/reference/requireOfJsonFileTypes.js index 76de6bca9f..e84f684187 100644 --- a/tests/baselines/reference/requireOfJsonFileTypes.js +++ b/tests/baselines/reference/requireOfJsonFileTypes.js @@ -45,24 +45,24 @@ booleanLiteral = g[0]; //// [g.json] [true, false] -//// [b.json] +//// [out/b.json] { "a": true, "b": "hello", "c": null, "d": false } -//// [c.json] +//// [out/c.json] ["a", null, "string"] -//// [d.json] +//// [out/d.json] "dConfig" -//// [e.json] +//// [out/e.json] -10 -//// [f.json] +//// [out/f.json] [-10, 30] -//// [g.json] +//// [out/g.json] [true, false] -//// [file1.js] +//// [out/file1.js] "use strict"; exports.__esModule = true; var b = require("./b.json"); diff --git a/tests/baselines/reference/requireOfJsonFileWithAmd.js b/tests/baselines/reference/requireOfJsonFileWithAmd.js index ebc5a2d42e..6e4928174c 100644 --- a/tests/baselines/reference/requireOfJsonFileWithAmd.js +++ b/tests/baselines/reference/requireOfJsonFileWithAmd.js @@ -15,7 +15,7 @@ if (x) { "b": "hello" } -//// [file1.js] +//// [out/file1.js] define(["require", "exports", "./b", "./b.json"], function (require, exports, b1, b2) { "use strict"; exports.__esModule = true; diff --git a/tests/baselines/reference/requireOfJsonFileWithEmptyObject.js b/tests/baselines/reference/requireOfJsonFileWithEmptyObject.js index 851a914d30..ad6694b525 100644 --- a/tests/baselines/reference/requireOfJsonFileWithEmptyObject.js +++ b/tests/baselines/reference/requireOfJsonFileWithEmptyObject.js @@ -12,9 +12,9 @@ if (x) { { } -//// [b.json] +//// [out/b.json] {} -//// [file1.js] +//// [out/file1.js] "use strict"; exports.__esModule = true; var b1 = require("./b.json"); diff --git a/tests/baselines/reference/requireOfJsonFileWithEmptyObjectWithErrors.js b/tests/baselines/reference/requireOfJsonFileWithEmptyObjectWithErrors.js index 57122096da..ae50a6ea0e 100644 --- a/tests/baselines/reference/requireOfJsonFileWithEmptyObjectWithErrors.js +++ b/tests/baselines/reference/requireOfJsonFileWithEmptyObjectWithErrors.js @@ -13,9 +13,9 @@ if (x) { { } -//// [b.json] +//// [out/b.json] {} -//// [file1.js] +//// [out/file1.js] "use strict"; exports.__esModule = true; var b1 = require("./b.json"); diff --git a/tests/baselines/reference/requireOfJsonFileWithErrors.js b/tests/baselines/reference/requireOfJsonFileWithErrors.js index 9f987ff3d8..a51687c66b 100644 --- a/tests/baselines/reference/requireOfJsonFileWithErrors.js +++ b/tests/baselines/reference/requireOfJsonFileWithErrors.js @@ -15,12 +15,12 @@ if (x) { "b": "hello" } -//// [b.json] +//// [out/b.json] { 'a': true, "b": "hello" } -//// [file1.js] +//// [out/file1.js] "use strict"; exports.__esModule = true; var b1 = require("./b.json"); diff --git a/tests/baselines/reference/requireOfJsonFileWithNoContent.js b/tests/baselines/reference/requireOfJsonFileWithNoContent.js index 754e616ae4..4addb7f597 100644 --- a/tests/baselines/reference/requireOfJsonFileWithNoContent.js +++ b/tests/baselines/reference/requireOfJsonFileWithNoContent.js @@ -12,8 +12,8 @@ if (x) { //// [b.json] -//// [b.json] -//// [file1.js] +//// [out/b.json] +//// [out/file1.js] "use strict"; exports.__esModule = true; var b1 = require("./b.json"); diff --git a/tests/baselines/reference/requireOfJsonFileWithoutAllowJs.js b/tests/baselines/reference/requireOfJsonFileWithoutAllowJs.js index eadcd2532f..0513e2b620 100644 --- a/tests/baselines/reference/requireOfJsonFileWithoutAllowJs.js +++ b/tests/baselines/reference/requireOfJsonFileWithoutAllowJs.js @@ -15,12 +15,12 @@ if (x) { "b": "hello" } -//// [b.json] +//// [out/b.json] { "a": true, "b": "hello" } -//// [file1.js] +//// [out/file1.js] "use strict"; exports.__esModule = true; var b1 = require("./b.json"); diff --git a/tests/baselines/reference/requireOfJsonFileWithoutExtension.js b/tests/baselines/reference/requireOfJsonFileWithoutExtension.js index 4e9bea900b..d3bbce8d37 100644 --- a/tests/baselines/reference/requireOfJsonFileWithoutExtension.js +++ b/tests/baselines/reference/requireOfJsonFileWithoutExtension.js @@ -15,12 +15,12 @@ if (x) { "b": "hello" } -//// [b.json] +//// [out/b.json] { "a": true, "b": "hello" } -//// [file1.js] +//// [out/file1.js] "use strict"; exports.__esModule = true; var b1 = require("./b"); // This should not resolve diff --git a/tests/baselines/reference/requireOfJsonFileWithoutExtensionResolvesToTs.js b/tests/baselines/reference/requireOfJsonFileWithoutExtensionResolvesToTs.js index e6908a72a7..438a118340 100644 --- a/tests/baselines/reference/requireOfJsonFileWithoutExtensionResolvesToTs.js +++ b/tests/baselines/reference/requireOfJsonFileWithoutExtensionResolvesToTs.js @@ -24,15 +24,15 @@ if (x2) { //// [c.ts] export = { a: true, b: "hello" }; -//// [c.js] +//// [out/c.js] "use strict"; module.exports = { a: true, b: "hello" }; -//// [c.json] +//// [out/c.json] { "a": true, "b": "hello" } -//// [file1.js] +//// [out/file1.js] "use strict"; exports.__esModule = true; var c1 = require("./c"); // resolves to c.ts diff --git a/tests/baselines/reference/requireOfJsonFileWithoutOutDir.errors.txt b/tests/baselines/reference/requireOfJsonFileWithoutOutDir.errors.txt new file mode 100644 index 0000000000..07f0f1b84d --- /dev/null +++ b/tests/baselines/reference/requireOfJsonFileWithoutOutDir.errors.txt @@ -0,0 +1,20 @@ +error TS5055: Cannot write file 'tests/cases/compiler/b.json' because it would overwrite input file. + Adding a tsconfig.json file will help organize projects that contain both TypeScript and JavaScript files. Learn more at https://aka.ms/tsconfig. + + +!!! error TS5055: Cannot write file 'tests/cases/compiler/b.json' because it would overwrite input file. +!!! error TS5055: Adding a tsconfig.json file will help organize projects that contain both TypeScript and JavaScript files. Learn more at https://aka.ms/tsconfig. +==== tests/cases/compiler/file1.ts (0 errors) ==== + import b1 = require('./b.json'); + let x = b1.a; + import b2 = require('./b.json'); + if (x) { + let b = b2.b; + x = (b1.b === b); + } + +==== tests/cases/compiler/b.json (0 errors) ==== + { + "a": true, + "b": "hello" + } \ No newline at end of file diff --git a/tests/baselines/reference/requireOfJsonFileWithoutOutDir.js b/tests/baselines/reference/requireOfJsonFileWithoutOutDir.js new file mode 100644 index 0000000000..d456f1f8c9 --- /dev/null +++ b/tests/baselines/reference/requireOfJsonFileWithoutOutDir.js @@ -0,0 +1,27 @@ +//// [tests/cases/compiler/requireOfJsonFileWithoutOutDir.ts] //// + +//// [file1.ts] +import b1 = require('./b.json'); +let x = b1.a; +import b2 = require('./b.json'); +if (x) { + let b = b2.b; + x = (b1.b === b); +} + +//// [b.json] +{ + "a": true, + "b": "hello" +} + +//// [tests/cases/compiler/file1.js] +"use strict"; +exports.__esModule = true; +var b1 = require("./b.json"); +var x = b1.a; +var b2 = require("./b.json"); +if (x) { + var b = b2.b; + x = (b1.b === b); +} diff --git a/tests/baselines/reference/requireOfJsonFileWithoutOutDir.symbols b/tests/baselines/reference/requireOfJsonFileWithoutOutDir.symbols new file mode 100644 index 0000000000..a8f82b6b14 --- /dev/null +++ b/tests/baselines/reference/requireOfJsonFileWithoutOutDir.symbols @@ -0,0 +1,38 @@ +=== tests/cases/compiler/file1.ts === +import b1 = require('./b.json'); +>b1 : Symbol(b1, Decl(file1.ts, 0, 0)) + +let x = b1.a; +>x : Symbol(x, Decl(file1.ts, 1, 3)) +>b1.a : Symbol("a", Decl(b.json, 0, 1)) +>b1 : Symbol(b1, Decl(file1.ts, 0, 0)) +>a : Symbol("a", Decl(b.json, 0, 1)) + +import b2 = require('./b.json'); +>b2 : Symbol(b2, Decl(file1.ts, 1, 13)) + +if (x) { +>x : Symbol(x, Decl(file1.ts, 1, 3)) + + let b = b2.b; +>b : Symbol(b, Decl(file1.ts, 4, 7)) +>b2.b : Symbol("b", Decl(b.json, 1, 14)) +>b2 : Symbol(b2, Decl(file1.ts, 1, 13)) +>b : Symbol("b", Decl(b.json, 1, 14)) + + x = (b1.b === b); +>x : Symbol(x, Decl(file1.ts, 1, 3)) +>b1.b : Symbol("b", Decl(b.json, 1, 14)) +>b1 : Symbol(b1, Decl(file1.ts, 0, 0)) +>b : Symbol("b", Decl(b.json, 1, 14)) +>b : Symbol(b, Decl(file1.ts, 4, 7)) +} + +=== tests/cases/compiler/b.json === +{ + "a": true, +>"a" : Symbol("a", Decl(b.json, 0, 1)) + + "b": "hello" +>"b" : Symbol("b", Decl(b.json, 1, 14)) +} diff --git a/tests/baselines/reference/requireOfJsonFileWithoutOutDir.types b/tests/baselines/reference/requireOfJsonFileWithoutOutDir.types new file mode 100644 index 0000000000..c718c42940 --- /dev/null +++ b/tests/baselines/reference/requireOfJsonFileWithoutOutDir.types @@ -0,0 +1,45 @@ +=== tests/cases/compiler/file1.ts === +import b1 = require('./b.json'); +>b1 : { "a": boolean; "b": string; } + +let x = b1.a; +>x : boolean +>b1.a : boolean +>b1 : { "a": boolean; "b": string; } +>a : boolean + +import b2 = require('./b.json'); +>b2 : { "a": boolean; "b": string; } + +if (x) { +>x : boolean + + let b = b2.b; +>b : string +>b2.b : string +>b2 : { "a": boolean; "b": string; } +>b : string + + x = (b1.b === b); +>x = (b1.b === b) : boolean +>x : boolean +>(b1.b === b) : boolean +>b1.b === b : boolean +>b1.b : string +>b1 : { "a": boolean; "b": string; } +>b : string +>b : string +} + +=== tests/cases/compiler/b.json === +{ +>{ "a": true, "b": "hello"} : { "a": boolean; "b": string; } + + "a": true, +>"a" : boolean +>true : true + + "b": "hello" +>"b" : string +>"hello" : "hello" +} diff --git a/tests/cases/compiler/requireOfJsonFile.ts b/tests/cases/compiler/requireOfJsonFile.ts index 6c10279aa6..59922a3644 100644 --- a/tests/cases/compiler/requireOfJsonFile.ts +++ b/tests/cases/compiler/requireOfJsonFile.ts @@ -1,6 +1,7 @@ // @module: commonjs // @outdir: out/ // @allowJs: true +// @fullEmitPaths: true // @Filename: file1.ts import b1 = require('./b.json'); diff --git a/tests/cases/compiler/requireOfJsonFileNonRelative.ts b/tests/cases/compiler/requireOfJsonFileNonRelative.ts index f769f04282..8b3d2fd21b 100644 --- a/tests/cases/compiler/requireOfJsonFileNonRelative.ts +++ b/tests/cases/compiler/requireOfJsonFileNonRelative.ts @@ -1,6 +1,7 @@ // @module: commonjs // @outdir: out/ // @allowJs: true +// @fullEmitPaths: true // @Filename: /src/projects/file1.ts import b1 = require('b.json'); diff --git a/tests/cases/compiler/requireOfJsonFileNonRelativeWithoutExtension.ts b/tests/cases/compiler/requireOfJsonFileNonRelativeWithoutExtension.ts index 4e4b4dda6e..9e2cff7b3c 100644 --- a/tests/cases/compiler/requireOfJsonFileNonRelativeWithoutExtension.ts +++ b/tests/cases/compiler/requireOfJsonFileNonRelativeWithoutExtension.ts @@ -1,6 +1,7 @@ // @module: commonjs // @outdir: out/ // @allowJs: true +// @fullEmitPaths: true // @Filename: /src/projects/file1.ts import d = require("d.json"); // Should fail diff --git a/tests/cases/compiler/requireOfJsonFileNonRelativeWithoutExtensionResolvesToTs.ts b/tests/cases/compiler/requireOfJsonFileNonRelativeWithoutExtensionResolvesToTs.ts index 27126a1454..4e8fd059df 100644 --- a/tests/cases/compiler/requireOfJsonFileNonRelativeWithoutExtensionResolvesToTs.ts +++ b/tests/cases/compiler/requireOfJsonFileNonRelativeWithoutExtensionResolvesToTs.ts @@ -1,6 +1,7 @@ // @module: commonjs // @outdir: out/ // @allowJs: true +// @fullEmitPaths: true // @Filename: /src/projects/file1.ts import f = require("f"); // should work to f.ts diff --git a/tests/cases/compiler/requireOfJsonFileTypes.ts b/tests/cases/compiler/requireOfJsonFileTypes.ts index 9363790991..2f5bdc9dd1 100644 --- a/tests/cases/compiler/requireOfJsonFileTypes.ts +++ b/tests/cases/compiler/requireOfJsonFileTypes.ts @@ -2,6 +2,7 @@ // @outdir: out/ // @allowJs: true // @strictNullChecks: true +// @fullEmitPaths: true // @Filename: file1.ts import b = require('./b.json'); diff --git a/tests/cases/compiler/requireOfJsonFileWithAmd.ts b/tests/cases/compiler/requireOfJsonFileWithAmd.ts index d37c9dd4f0..6d6eb20a7b 100644 --- a/tests/cases/compiler/requireOfJsonFileWithAmd.ts +++ b/tests/cases/compiler/requireOfJsonFileWithAmd.ts @@ -1,6 +1,7 @@ // @module: amd // @outdir: out/ // @allowJs: true +// @fullEmitPaths: true // @Filename: file1.ts import b1 = require('./b'); diff --git a/tests/cases/compiler/requireOfJsonFileWithEmptyObject.ts b/tests/cases/compiler/requireOfJsonFileWithEmptyObject.ts index 030ddf16a8..357b55cee5 100644 --- a/tests/cases/compiler/requireOfJsonFileWithEmptyObject.ts +++ b/tests/cases/compiler/requireOfJsonFileWithEmptyObject.ts @@ -1,6 +1,7 @@ // @module: commonjs // @outdir: out/ // @allowJs: true +// @fullEmitPaths: true // @Filename: file1.ts import b1 = require('./b.json'); diff --git a/tests/cases/compiler/requireOfJsonFileWithEmptyObjectWithErrors.ts b/tests/cases/compiler/requireOfJsonFileWithEmptyObjectWithErrors.ts index 6d8edd2c0c..87278aa721 100644 --- a/tests/cases/compiler/requireOfJsonFileWithEmptyObjectWithErrors.ts +++ b/tests/cases/compiler/requireOfJsonFileWithEmptyObjectWithErrors.ts @@ -1,6 +1,7 @@ // @module: commonjs // @outdir: out/ // @allowJs: true +// @fullEmitPaths: true // @Filename: file1.ts import b1 = require('./b.json'); diff --git a/tests/cases/compiler/requireOfJsonFileWithErrors.ts b/tests/cases/compiler/requireOfJsonFileWithErrors.ts index ad853e183b..6148b40563 100644 --- a/tests/cases/compiler/requireOfJsonFileWithErrors.ts +++ b/tests/cases/compiler/requireOfJsonFileWithErrors.ts @@ -1,6 +1,7 @@ // @module: commonjs // @outdir: out/ // @allowJs: true +// @fullEmitPaths: true // @Filename: file1.ts import b1 = require('./b.json'); diff --git a/tests/cases/compiler/requireOfJsonFileWithNoContent.ts b/tests/cases/compiler/requireOfJsonFileWithNoContent.ts index 0f9bbbb28f..41214ffa1b 100644 --- a/tests/cases/compiler/requireOfJsonFileWithNoContent.ts +++ b/tests/cases/compiler/requireOfJsonFileWithNoContent.ts @@ -1,6 +1,7 @@ // @module: commonjs // @outdir: out/ // @allowJs: true +// @fullEmitPaths: true // @Filename: file1.ts import b1 = require('./b.json'); diff --git a/tests/cases/compiler/requireOfJsonFileWithoutAllowJs.ts b/tests/cases/compiler/requireOfJsonFileWithoutAllowJs.ts index 9043be7d44..01b61ce533 100644 --- a/tests/cases/compiler/requireOfJsonFileWithoutAllowJs.ts +++ b/tests/cases/compiler/requireOfJsonFileWithoutAllowJs.ts @@ -1,5 +1,6 @@ // @module: commonjs // @outdir: out/ +// @fullEmitPaths: true // @Filename: file1.ts import b1 = require('./b.json'); diff --git a/tests/cases/compiler/requireOfJsonFileWithoutExtension.ts b/tests/cases/compiler/requireOfJsonFileWithoutExtension.ts index 7739b1eb7c..a17b9cb1dd 100644 --- a/tests/cases/compiler/requireOfJsonFileWithoutExtension.ts +++ b/tests/cases/compiler/requireOfJsonFileWithoutExtension.ts @@ -1,6 +1,7 @@ // @module: commonjs // @outdir: out/ // @allowJs: true +// @fullEmitPaths: true // @Filename: file1.ts import b1 = require('./b'); // This should not resolve diff --git a/tests/cases/compiler/requireOfJsonFileWithoutExtensionResolvesToTs.ts b/tests/cases/compiler/requireOfJsonFileWithoutExtensionResolvesToTs.ts index a3974eaf28..65d81fe81e 100644 --- a/tests/cases/compiler/requireOfJsonFileWithoutExtensionResolvesToTs.ts +++ b/tests/cases/compiler/requireOfJsonFileWithoutExtensionResolvesToTs.ts @@ -1,6 +1,7 @@ // @module: commonjs // @outdir: out/ // @allowJs: true +// @fullEmitPaths: true // @Filename: file1.ts import c1 = require('./c'); // resolves to c.ts diff --git a/tests/cases/compiler/requireOfJsonFileWithoutOutDir.ts b/tests/cases/compiler/requireOfJsonFileWithoutOutDir.ts new file mode 100644 index 0000000000..bbdb40e0e6 --- /dev/null +++ b/tests/cases/compiler/requireOfJsonFileWithoutOutDir.ts @@ -0,0 +1,17 @@ +// @module: commonjs +// @fullEmitPaths: true + +// @Filename: file1.ts +import b1 = require('./b.json'); +let x = b1.a; +import b2 = require('./b.json'); +if (x) { + let b = b2.b; + x = (b1.b === b); +} + +// @Filename: b.json +{ + "a": true, + "b": "hello" +} \ No newline at end of file