diff --git a/test/bar.js b/test/bar.js new file mode 100644 index 0000000..ea7b898 --- /dev/null +++ b/test/bar.js @@ -0,0 +1,3 @@ +module.exports = function() { + return "bar" +} diff --git a/test/baz.js b/test/baz.js new file mode 100644 index 0000000..2508402 --- /dev/null +++ b/test/baz.js @@ -0,0 +1,4 @@ +module.exports = function() { + return "baz" +} + diff --git a/test/foo.js b/test/foo.js new file mode 100644 index 0000000..ea2f4c8 --- /dev/null +++ b/test/foo.js @@ -0,0 +1,10 @@ +var result +var useX = true + +if(useX) { + result = require('./bar') +} else { + result = require('./baz') +} + +module.exports = result diff --git a/test/index.js b/test/index.js index 22f1bf6..5cbed72 100644 --- a/test/index.js +++ b/test/index.js @@ -25,6 +25,21 @@ test('uglifyify: sanity check', function(t) { })) }) +test.only('uglifyify: optional require', function(t) { + var src = path.join(__dirname, 'foo.js') + var orig = fs.readFileSync(src, 'utf8') + + browserify({ entries: [src], debug: false }) + .transform(uglifyify) + .bundle() + .pipe(bl(function(err, data) { + if (err) return t.ifError(err) + data = String(data) + t.true(data.match(/{"\.\/bar":\d}/)) + t.end() + })) +}) + test('uglifyify: ignores json', function(t) { var src = path.join(__dirname, 'fixture.js') var json = path.join(__dirname, 'fixture.json')