task.plugin('uglify', {}, function * (file, opts) { opts = Object.assign({}, opts, { fromString:true }); const ext = extname(file.base); const rgx = new RegExp(`\\${ext}$`, 'i'); // replace extension with `.js` file.base = file.base.replace(rgx, '.js'); const out = minify(file.data.toString(), opts); // write output file.data = new Buffer(out.code); });
const res = minify({ [file.base]:file.data.toString() }, opts); if (res.error) { return task.emit('plugin_error', { plugin: '@taskr/uglify', error: errMsg(res.error) }); file.data = new Buffer(res.code); // write output if (res.map !== void 0 && isMapping && !isInline) { console.log('HAS MAP', res.map);
it('minifies code in the production environment', async () => { mockGasket.config.env = 'production'; const endpoint = await getEndpoint(); await endpoint(mockReq, mockRes); expect(mockMinify.minify).toHaveBeenCalled(); });
it('minifies code if passed a boolean', async () => { mockGasket.config.serviceWorker.minify = true; const endpoint = await getEndpoint(); await endpoint(mockReq, mockRes); expect(mockMinify.minify).toHaveBeenCalled(); });
it('does not minifies code in an unknown environment', async () => { const endpoint = await getEndpoint(); await endpoint(mockReq, mockRes); expect(mockMinify.minify).not.toHaveBeenCalled(); });
it('minifies code if explicitly specified by gasket', async () => { mockGasket.config.serviceWorker.minify = {}; const endpoint = await getEndpoint(); await endpoint(mockReq, mockRes); expect(mockMinify.minify).toHaveBeenCalled(); });
it('does not minifies code in an unknown environment', async () => { const endpoint = await getEndpoint(); await endpoint(mockReq, mockRes); expect(mockMinify.minify).not.toHaveBeenCalled(); });
it('minifies code if explicitly specified by gasket', async () => { mockGasket.config.serviceWorker.minify = {}; const endpoint = await getEndpoint(); await endpoint(mockReq, mockRes); expect(mockMinify.minify).toHaveBeenCalled(); });