68 lines
2 KiB
JavaScript
68 lines
2 KiB
JavaScript
'use strict';
|
|
var test = require('tape'),
|
|
Vinyl = require('vinyl'),
|
|
gulpUglify = require('../');
|
|
|
|
var testContentsInput = 'function errorFunction(error)\n{';
|
|
var testOkContentsInput = '"use strict"; (function(console, first, second) { console.log(first + second) }(5, 10))';
|
|
|
|
var testFile1 = new Vinyl({
|
|
cwd: "/home/terin/broken-promises/",
|
|
base: "/home/terin/broken-promises/test",
|
|
path: "/home/terin/broken-promises/test/test1.js",
|
|
contents: new Buffer(testContentsInput)
|
|
});
|
|
|
|
var testFile2 = new Vinyl({
|
|
cwd: "/home/terin/broken-promises/",
|
|
base: "/home/terin/broken-promises/test",
|
|
path: "/home/terin/broken-promises/test/test2.js",
|
|
contents: new Buffer(testOkContentsInput)
|
|
});
|
|
|
|
test('should report files in error', function(t) {
|
|
t.plan(6);
|
|
|
|
var stream = gulpUglify();
|
|
|
|
stream.on('data', function() {
|
|
t.fail('we shouldn\'t have gotten here');
|
|
});
|
|
|
|
stream.on('error', function(e) {
|
|
t.ok(e instanceof Error, 'argument should be of type error');
|
|
t.equal(e.plugin, 'gulp-uglify', 'error is from gulp-uglify');
|
|
t.equal(e.fileName, testFile1.path, 'error reports correct file name');
|
|
t.equal(e.lineNumber, 2, 'error reports correct line number');
|
|
t.ok(e.stack, 'error has a stack');
|
|
t.false(e.showStack, 'error is configured to not print the stack');
|
|
});
|
|
|
|
stream.write(testFile1);
|
|
stream.end();
|
|
});
|
|
|
|
test('shouldn\'t blow up when given output options', function(t) {
|
|
t.plan(5);
|
|
|
|
var stream = gulpUglify({
|
|
output: {
|
|
exportAll: true
|
|
}
|
|
});
|
|
|
|
stream.on('data', function() {
|
|
t.fail('We shouldn\'t have gotten here');
|
|
});
|
|
|
|
stream.on('error', function(e) {
|
|
t.ok(e instanceof Error, 'argument should be of type error');
|
|
t.equals(e.message, testFile2.path + ': `exportAll` is not a supported option');
|
|
t.equal(e.plugin, 'gulp-uglify', 'error is from gulp-uglify');
|
|
t.equal(e.fileName, testFile2.path, 'error reports correct file name');
|
|
t.false(e.showStack, 'error is configured to not print the stack');
|
|
});
|
|
|
|
stream.write(testFile2);
|
|
stream.end();
|
|
});
|