From d5ac4392bd7876872ff9d60b29ed18d4bfec5564 Mon Sep 17 00:00:00 2001 From: Lucas Wiener Date: Tue, 26 Jul 2016 09:54:02 +0200 Subject: [PATCH 1/3] Fixed sourceMapIncludeSources and inSourceMap = string combination of the UglifyJS.minify function. --- tools/node.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/node.js b/tools/node.js index 20ecb473..179c69db 100644 --- a/tools/node.js +++ b/tools/node.js @@ -114,7 +114,7 @@ exports.minify = function(files, options) { var inMap = options.inSourceMap; var output = {}; if (typeof options.inSourceMap == "string") { - inMap = fs.readFileSync(options.inSourceMap, "utf8"); + inMap = JSON.parse(fs.readFileSync(options.inSourceMap, "utf8")); } if (options.outSourceMap) { output.source_map = UglifyJS.SourceMap({ From 649cf701fadfcfb3f1d2b2dd4c3796efa8966791 Mon Sep 17 00:00:00 2001 From: Lucas Wiener Date: Wed, 27 Jul 2016 16:02:33 +0200 Subject: [PATCH 2/3] Added test for #1236 --- test/mocha/input/issue-1236/simple.js | 8 ++++++++ test/mocha/input/issue-1236/simple.js.map | 8 ++++++++ test/mocha/minify.js | 16 ++++++++++++++++ 3 files changed, 32 insertions(+) create mode 100644 test/mocha/input/issue-1236/simple.js create mode 100644 test/mocha/input/issue-1236/simple.js.map diff --git a/test/mocha/input/issue-1236/simple.js b/test/mocha/input/issue-1236/simple.js new file mode 100644 index 00000000..8bdd7f26 --- /dev/null +++ b/test/mocha/input/issue-1236/simple.js @@ -0,0 +1,8 @@ +"use strict"; + +var foo = function foo(x) { + return "foo " + x; +}; +console.log(foo("bar")); + +//# sourceMappingURL=simple.js.map diff --git a/test/mocha/input/issue-1236/simple.js.map b/test/mocha/input/issue-1236/simple.js.map new file mode 100644 index 00000000..28989e0f --- /dev/null +++ b/test/mocha/input/issue-1236/simple.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "sources": ["index.js"], + "names": [], + "mappings": ";;AAAA,IAAI,MAAM,SAAN,GAAM;AAAA,SAAK,SAAS,CAAd;AAAA,CAAV;AACA,QAAQ,GAAR,CAAY,IAAI,KAAJ,CAAZ", + "file": "simple.js", + "sourcesContent": ["let foo = x => \"foo \" + x;\nconsole.log(foo(\"bar\"));"] +} diff --git a/test/mocha/minify.js b/test/mocha/minify.js index 02d31558..b6e7a23f 100644 --- a/test/mocha/minify.js +++ b/test/mocha/minify.js @@ -59,4 +59,20 @@ describe("minify", function() { 'a["foo"]="bar",a.a="red",x={"bar":10};'); }); }); + + describe("inSourceMap", function() { + it("Should read the given string filename correctly when sourceMapIncludeSources is enabled (#1236)", function() { + var result = Uglify.minify('./test/mocha/input/issue-1236/simple.js', { + outSourceMap: "simple.js.min.map", + inSourceMap: "./test/mocha/input/issue-1236/simple.js.map", + sourceMapIncludeSources: true + }); + + var map = JSON.parse(result.map); + + assert.equal(map.sourcesContent.length, 1); + assert.equal(map.sourcesContent[0], + 'let foo = x => "foo " + x;\nconsole.log(foo("bar"));'); + }); + }); }); From 5cae8a5f2664f1abc81f74f9644eeffaad85a358 Mon Sep 17 00:00:00 2001 From: Lucas Wiener Date: Thu, 28 Jul 2016 09:30:12 +0200 Subject: [PATCH 3/3] Moved test input files to test/input. --- test/{mocha => }/input/issue-1236/simple.js | 0 test/{mocha => }/input/issue-1236/simple.js.map | 0 test/mocha/minify.js | 4 ++-- 3 files changed, 2 insertions(+), 2 deletions(-) rename test/{mocha => }/input/issue-1236/simple.js (100%) rename test/{mocha => }/input/issue-1236/simple.js.map (100%) diff --git a/test/mocha/input/issue-1236/simple.js b/test/input/issue-1236/simple.js similarity index 100% rename from test/mocha/input/issue-1236/simple.js rename to test/input/issue-1236/simple.js diff --git a/test/mocha/input/issue-1236/simple.js.map b/test/input/issue-1236/simple.js.map similarity index 100% rename from test/mocha/input/issue-1236/simple.js.map rename to test/input/issue-1236/simple.js.map diff --git a/test/mocha/minify.js b/test/mocha/minify.js index b6e7a23f..2adbadcb 100644 --- a/test/mocha/minify.js +++ b/test/mocha/minify.js @@ -62,9 +62,9 @@ describe("minify", function() { describe("inSourceMap", function() { it("Should read the given string filename correctly when sourceMapIncludeSources is enabled (#1236)", function() { - var result = Uglify.minify('./test/mocha/input/issue-1236/simple.js', { + var result = Uglify.minify('./test/input/issue-1236/simple.js', { outSourceMap: "simple.js.min.map", - inSourceMap: "./test/mocha/input/issue-1236/simple.js.map", + inSourceMap: "./test/input/issue-1236/simple.js.map", sourceMapIncludeSources: true });