aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorJimb Esser <wasteland@gmail.com>2021-01-18 15:44:24 -0800
committerGitHub <noreply@github.com>2021-01-19 07:44:24 +0800
commit994293e97229110f676dc72ad68b6b2d8a015394 (patch)
tree9c035e8ae8ee1fd4a01302378dbf8c3a3db985ff /test
parentb57bae4b9e528ec7aeea7fd5768295a559cb5e5d (diff)
downloadtracifyjs-994293e97229110f676dc72ad68b6b2d8a015394.tar.gz
tracifyjs-994293e97229110f676dc72ad68b6b2d8a015394.zip
Fix overwriting existing sourcesContent in sourcemaps (#4567)
Diffstat (limited to 'test')
-rw-r--r--test/mocha/sourcemaps.js33
1 files changed, 33 insertions, 0 deletions
diff --git a/test/mocha/sourcemaps.js b/test/mocha/sourcemaps.js
index 91b38cd2..59642068 100644
--- a/test/mocha/sourcemaps.js
+++ b/test/mocha/sourcemaps.js
@@ -244,6 +244,39 @@ describe("sourcemaps", function() {
assert.strictEqual(result.code, '(function(){console.log("hello")}).call(this);');
assert.strictEqual(result.map, '{"version":3,"sources":["main.coffee"],"names":["console","log"],"mappings":"CAAA,WAAAA,QAAQC,IAAI"}');
});
+ it("Should not overwrite existing sourcesContent", function() {
+ var result = UglifyJS.minify({
+ "in.js": [
+ '"use strict";',
+ "",
+ "var _window$foo = window.foo,",
+ " a = _window$foo[0],",
+ " b = _window$foo[1];",
+ ].join("\n"),
+ }, {
+ compress: false,
+ mangle: false,
+ sourceMap: {
+ content: {
+ version: 3,
+ sources: [ "in.js" ],
+ names: [
+ "window",
+ "foo",
+ "a",
+ "b",
+ ],
+ mappings: ";;kBAAaA,MAAM,CAACC,G;IAAfC,C;IAAGC,C",
+ file: "in.js",
+ sourcesContent: [ "let [a, b] = window.foo;\n" ],
+ },
+ includeSources: true,
+ },
+ });
+ if (result.error) throw result.error;
+ assert.strictEqual(result.code, '"use strict";var _window$foo=window.foo,a=_window$foo[0],b=_window$foo[1];');
+ assert.strictEqual(result.map, '{"version":3,"sources":["in.js"],"sourcesContent":["let [a, b] = window.foo;\\n"],"names":["window","foo","a","b"],"mappings":"6BAAaA,OAAOC,IAAfC,E,eAAGC,E"}');
+ });
});
describe("sourceMapInline", function() {