diff --git a/.travis.yml b/.travis.yml index a391e9a4631..57f3570a6d9 100644 --- a/.travis.yml +++ b/.travis.yml @@ -83,7 +83,9 @@ jobs: - TEST_SUITE=built-tests - EMBER_ENV=production - env: TEST_SUITE=old-jquery-and-extend-prototypes - - env: TEST_SUITE=node + - env: + - TEST_SUITE=node + - EMBER_ENV=production node_js: "6" - env: TEST_SUITE=blueprints node_js: "6" diff --git a/broccoli/packages.js b/broccoli/packages.js index ee4881bd9a3..e250e1a30c5 100644 --- a/broccoli/packages.js +++ b/broccoli/packages.js @@ -87,7 +87,11 @@ module.exports.getPackagesES = function getPackagesES() { include: ['**/*.ts'], }); - let typescriptCompiled = typescript(debugTree(typescriptContents, `get-packages-es:ts:input`)); + let typescriptCompiled = typescript(debugTree(typescriptContents, `get-packages-es:ts:input`), { + compilerOptions: { + sourceMap: false, + }, + }); let debuggedCompiledTypescript = debugTree(typescriptCompiled, `get-packages-es:ts:output`); diff --git a/tests/node/sourcemap-test.js b/tests/node/sourcemap-test.js new file mode 100644 index 00000000000..dccd9789d63 --- /dev/null +++ b/tests/node/sourcemap-test.js @@ -0,0 +1,27 @@ +var fs = require('fs'); + +QUnit.module('sourcemap validation', function() { + var assets = ['ember.debug', 'ember.prod', 'ember.min']; + + assets.forEach(asset => { + QUnit.test(`${asset} has only a single sourcemaps comment`, function(assert) { + var jsPath = `dist/${asset}.js`; + assert.ok(fs.existsSync(jsPath)); + + var contents = fs.readFileSync(jsPath, 'utf-8'); + var num = count(contents, '//# sourceMappingURL='); + assert.equal(num, 1); + }); + }); +}); + +function count(source, find) { + var num = 0; + + var i = -1; + while ((i = source.indexOf(find, i + 1)) !== -1) { + num += 1; + } + + return num; +}