Allow input files to be map (url->filename)

This commit is contained in:
Geraint
2016-06-27 12:01:21 +01:00
committed by Richard van Velzen
parent a97690fc72
commit 85924bb32e
2 changed files with 52 additions and 5 deletions

View File

@@ -0,0 +1,40 @@
var Uglify = require('../../');
var assert = require("assert");
describe("Input file as map", function() {
it("Should accept object", function() {
var jsMap = {
'/scripts/foo.js': 'var foo = {"x": 1, y: 2, \'z\': 3};'
};
var result = Uglify.minify(jsMap, {fromString: true, outSourceMap: true});
var map = JSON.parse(result.map);
assert.strictEqual(result.code, 'var foo={x:1,y:2,z:3};');
assert.deepEqual(map.sources, ['/scripts/foo.js']);
});
it("Should accept array of objects and strings", function() {
var jsSeq = [
{'/scripts/foo.js': 'var foo = {"x": 1, y: 2, \'z\': 3};'},
'var bar = 15;'
];
var result = Uglify.minify(jsSeq, {fromString: true, outSourceMap: true});
var map = JSON.parse(result.map);
assert.strictEqual(result.code, 'var foo={x:1,y:2,z:3},bar=15;');
assert.strictEqual(map.sources[0], '/scripts/foo.js');
});
it("Should correctly include source", function() {
var jsSeq = [
{'/scripts/foo.js': 'var foo = {"x": 1, y: 2, \'z\': 3};'},
'var bar = 15;'
];
var result = Uglify.minify(jsSeq, {fromString: true, outSourceMap: true, sourceMapIncludeSources: true});
var map = JSON.parse(result.map);
assert.strictEqual(result.code, 'var foo={x:1,y:2,z:3},bar=15;');
assert.deepEqual(map.sourcesContent, ['var foo = {"x": 1, y: 2, \'z\': 3};', 'var bar = 15;']);
});
});