diff --git a/CHANGELOG.md b/CHANGELOG.md index bb59d457dd5..e6d27352f1d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,17 @@ # rollup changelog +## 1.20.3 +*2019-08-28* + +### Bug Fixes +* Make sure file hashes change when a change of the naming pattern leads to a file name change of a dependency (#3083) +* Fix several issues where reexporting an external "default" export could lead to invalid or incorrect code (#3084) + +### Pull Requests +* [#3078](https://github.com/rollup/rollup/pull/3078): Add github actions workflow config for windows (@shellscape) +* [#3083](https://github.com/rollup/rollup/pull/3083): Properly reflect dependency file names in hash (@lukastaegert) +* [#3084](https://github.com/rollup/rollup/pull/3084): Fix "default" reexport issues in non ESM/System formats (@lukastaegert) + ## 1.20.2 *2019-08-25* diff --git a/docs/999-big-list-of-options.md b/docs/999-big-list-of-options.md index 56132eb8bab..5b105f9a8af 100755 --- a/docs/999-big-list-of-options.md +++ b/docs/999-big-list-of-options.md @@ -397,7 +397,7 @@ Default: `"[name]-[hash].js"` The pattern to use for naming shared chunks created when code-splitting. Pattern supports the following placeholders: * `[format]`: The rendering format defined in the output options, e.g. `esm` or `cjs`. * `[hash]`: A hash based on the content of the chunk and the content of all its dependencies. - * `[name]`: The name of the chunk. This will be `chunk` unless the chunk was created via the [`manualChunks`](guide/en/#manualchunks) options. + * `[name]`: The name of the chunk. This can be explicitly set via the [`manualChunks`](guide/en/#manualchunks) option or when the chunk is created by a plugin via [`this.emitFile`](guide/en/#thisemitfileemittedfile-emittedchunk--emittedasset--string). Otherwise it will be derived from the chunk contents. Forward slashes `/` can be used to place files in sub-directories. See also [`output.assetFileNames`](guide/en/#outputassetfilenames), [`output.entryFileNames`](guide/en/#outputentryfilenames). diff --git a/package-lock.json b/package-lock.json index d247f2b96e7..9dbfb61a57d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "rollup", - "version": "1.20.2", + "version": "1.20.3", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index 87604081782..2ffffd4849f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rollup", - "version": "1.20.2", + "version": "1.20.3", "description": "Next-generation ES module bundler", "main": "dist/rollup.js", "module": "dist/rollup.es.js", diff --git a/src/Chunk.ts b/src/Chunk.ts index b07ef826801..38286584553 100644 --- a/src/Chunk.ts +++ b/src/Chunk.ts @@ -250,19 +250,25 @@ export default class Chunk { } generateId( - pattern: string, - patternName: string, addons: Addons, options: OutputOptions, - existingNames: Record + existingNames: Record, + includeHash: boolean ): string { if (this.fileName !== null) { return this.fileName; } + const [pattern, patternName] = + this.facadeModule && this.facadeModule.isUserDefinedEntryPoint + ? [options.entryFileNames || '[name].js', 'output.entryFileNames'] + : [options.chunkFileNames || '[name]-[hash].js', 'output.chunkFileNames']; return makeUnique( renderNamePattern(pattern, patternName, { format: () => (options.format === 'es' ? 'esm' : (options.format as string)), - hash: () => this.computeContentHashWithDependencies(addons, options), + hash: () => + includeHash + ? this.computeContentHashWithDependencies(addons, options, existingNames) + : '[hash]', name: () => this.getChunkName() }), existingNames @@ -831,15 +837,23 @@ export default class Chunk { return hashAugmentation; } - private computeContentHashWithDependencies(addons: Addons, options: OutputOptions): string { + private computeContentHashWithDependencies( + addons: Addons, + options: OutputOptions, + existingNames: Record + ): string { const hash = sha256(); hash.update( [addons.intro, addons.outro, addons.banner, addons.footer].map(addon => addon || '').join(':') ); hash.update(options.format); this.visitDependencies(dep => { - if (dep instanceof ExternalModule) hash.update(':' + dep.renderPath); - else hash.update(dep.getRenderedHash()); + if (dep instanceof ExternalModule) { + hash.update(':' + dep.renderPath); + } else { + hash.update(dep.getRenderedHash()); + hash.update(dep.generateId(addons, options, existingNames, false)); + } }); return hash.digest('hex').substr(0, 8); diff --git a/src/finalisers/shared/getExportBlock.ts b/src/finalisers/shared/getExportBlock.ts index 05beb20173c..001b1305d1a 100644 --- a/src/finalisers/shared/getExportBlock.ts +++ b/src/finalisers/shared/getExportBlock.ts @@ -11,28 +11,20 @@ export default function getExportBlock( ) { const _ = compact ? '' : ' '; const n = compact ? '' : '\n'; - if (!namedExportsMode) { let local; - exports.some(expt => { - if (expt.exported === 'default') { - local = expt.local; - return true; + if (exports.length > 0) { + local = exports[0].local; + } else { + for (const dep of dependencies) { + if (dep.reexports) { + const expt = dep.reexports[0]; + local = + dep.namedExportsMode && expt.imported !== '*' && expt.imported !== 'default' + ? `${dep.name}.${expt.imported}` + : dep.name; + } } - return false; - }); - // search for reexported default otherwise - if (!local) { - dependencies.some(dep => { - if (!dep.reexports) return false; - return dep.reexports.some(expt => { - if (expt.reexported === 'default') { - local = dep.namedExportsMode && expt.imported !== '*' ? `${dep.name}.${expt.imported}` : dep.name; - return true; - } - return false; - }); - }); } return `${mechanism}${local};`; } @@ -44,7 +36,7 @@ export default function getExportBlock( if (reexports && namedExportsMode) { reexports.forEach(specifier => { if (specifier.reexported === '*') { - if (!compact && exportBlock) exportBlock += '\n'; + if (exportBlock) exportBlock += n; if (specifier.needsLiveBinding) { exportBlock += `Object.keys(${name}).forEach(function${_}(k)${_}{${n}` + @@ -63,60 +55,61 @@ export default function getExportBlock( } }); - dependencies.forEach( - ({ name, imports, reexports, isChunk, namedExportsMode: depNamedExportsMode }) => { - if (reexports && namedExportsMode) { - reexports.forEach(specifier => { - if (specifier.imported === 'default' && !isChunk) { - const exportsNamesOrNamespace = - (imports && imports.some(specifier => specifier.imported !== 'default')) || - (reexports && - reexports.some( - specifier => specifier.imported !== 'default' && specifier.imported !== '*' - )); - - const reexportsDefaultAsDefault = - reexports && - reexports.some( - specifier => specifier.imported === 'default' && specifier.reexported === 'default' - ); - - if (exportBlock && !compact) exportBlock += '\n'; - if (exportsNamesOrNamespace || reexportsDefaultAsDefault) - exportBlock += `exports.${specifier.reexported}${_}=${_}${name}${ - interop !== false ? '__default' : '.default' - };`; - else exportBlock += `exports.${specifier.reexported}${_}=${_}${name};`; - } else if (specifier.imported !== '*') { - if (exportBlock && !compact) exportBlock += '\n'; - const importName = - specifier.imported === 'default' && !depNamedExportsMode - ? name - : `${name}.${specifier.imported}`; - exportBlock += specifier.needsLiveBinding - ? `Object.defineProperty(exports,${_}'${specifier.reexported}',${_}{${n}` + - `${t}enumerable:${_}true,${n}` + - `${t}get:${_}function${_}()${_}{${n}` + - `${t}${t}return ${importName};${n}${t}}${n}});` - : `exports.${specifier.reexported}${_}=${_}${importName};`; - } else if (specifier.reexported !== '*') { - if (exportBlock && !compact) exportBlock += '\n'; + for (const { + name, + imports, + reexports, + isChunk, + namedExportsMode: depNamedExportsMode, + exportsNames + } of dependencies) { + if (reexports && namedExportsMode) { + for (const specifier of reexports) { + if (specifier.imported === 'default' && !isChunk) { + if (exportBlock) exportBlock += n; + if ( + exportsNames && + (reexports.some(specifier => + specifier.imported === 'default' + ? specifier.reexported === 'default' + : specifier.imported !== '*' + ) || + (imports && imports.some(specifier => specifier.imported !== 'default'))) + ) { + exportBlock += `exports.${specifier.reexported}${_}=${_}${name}${ + interop !== false ? '__default' : '.default' + };`; + } else { exportBlock += `exports.${specifier.reexported}${_}=${_}${name};`; } - }); + } else if (specifier.imported !== '*') { + if (exportBlock) exportBlock += n; + const importName = + specifier.imported === 'default' && !depNamedExportsMode + ? name + : `${name}.${specifier.imported}`; + exportBlock += specifier.needsLiveBinding + ? `Object.defineProperty(exports,${_}'${specifier.reexported}',${_}{${n}` + + `${t}enumerable:${_}true,${n}` + + `${t}get:${_}function${_}()${_}{${n}` + + `${t}${t}return ${importName};${n}${t}}${n}});` + : `exports.${specifier.reexported}${_}=${_}${importName};`; + } else if (specifier.reexported !== '*') { + if (exportBlock) exportBlock += n; + exportBlock += `exports.${specifier.reexported}${_}=${_}${name};`; + } } } - ); + } - exports.forEach(expt => { + for (const expt of exports) { const lhs = `exports.${expt.exported}`; const rhs = expt.local; - if (lhs === rhs) { - return; + if (lhs !== rhs) { + if (exportBlock) exportBlock += n; + exportBlock += `${lhs}${_}=${_}${rhs};`; } - if (exportBlock && !compact) exportBlock += '\n'; - exportBlock += `${lhs}${_}=${_}${rhs};`; - }); + } return exportBlock; } diff --git a/src/finalisers/shared/getInteropBlock.ts b/src/finalisers/shared/getInteropBlock.ts index 2f69a062549..3aabf076edb 100644 --- a/src/finalisers/shared/getInteropBlock.ts +++ b/src/finalisers/shared/getInteropBlock.ts @@ -6,21 +6,23 @@ export default function getInteropBlock( options: OutputOptions, varOrConst: string ) { + const _ = options.compact ? '' : ' '; + return dependencies .map(({ name, exportsNames, exportsDefault, namedExportsMode }) => { - if (!namedExportsMode) return; - - if (!exportsDefault || options.interop === false) return null; + if (!namedExportsMode || !exportsDefault || options.interop === false) return null; if (exportsNames) { - if (options.compact) - return `${varOrConst} ${name}__default='default'in ${name}?${name}['default']:${name};`; - return `${varOrConst} ${name}__default = 'default' in ${name} ? ${name}['default'] : ${name};`; + return ( + `${varOrConst} ${name}__default${_}=${_}'default'${_}in ${name}${_}?` + + `${_}${name}['default']${_}:${_}${name};` + ); } - if (options.compact) - return `${name}=${name}&&${name}.hasOwnProperty('default')?${name}['default']:${name};`; - return `${name} = ${name} && ${name}.hasOwnProperty('default') ? ${name}['default'] : ${name};`; + return ( + `${name}${_}=${_}${name}${_}&&${_}${name}.hasOwnProperty('default')${_}?` + + `${_}${name}['default']${_}:${_}${name};` + ); }) .filter(Boolean) .join(options.compact ? '' : '\n'); diff --git a/src/utils/assignChunkIds.ts b/src/utils/assignChunkIds.ts index 452de880205..5ed2d58faaa 100644 --- a/src/utils/assignChunkIds.ts +++ b/src/utils/assignChunkIds.ts @@ -24,21 +24,12 @@ export function assignChunkIds( // make sure entry chunk names take precedence with regard to deconflicting const chunksForNaming: Chunk[] = entryChunks.concat(otherChunks); for (const chunk of chunksForNaming) { - const facadeModule = chunk.facadeModule; if (outputOptions.file) { chunk.id = basename(outputOptions.file); } else if (inputOptions.preserveModules) { chunk.id = chunk.generateIdPreserveModules(inputBase, bundle); } else { - let pattern, patternName; - if (facadeModule && facadeModule.isUserDefinedEntryPoint) { - pattern = outputOptions.entryFileNames || '[name].js'; - patternName = 'output.entryFileNames'; - } else { - pattern = outputOptions.chunkFileNames || '[name]-[hash].js'; - patternName = 'output.chunkFileNames'; - } - chunk.id = chunk.generateId(pattern, patternName, addons, outputOptions, bundle); + chunk.id = chunk.generateId(addons, outputOptions, bundle, true); } bundle[chunk.id] = FILE_PLACEHOLDER; } diff --git a/test/chunking-form/samples/filenames-patterns/_expected/amd/chunk-main2-6bb39c19-amd.js b/test/chunking-form/samples/filenames-patterns/_expected/amd/chunk-main2-6a714ad3-amd.js similarity index 100% rename from test/chunking-form/samples/filenames-patterns/_expected/amd/chunk-main2-6bb39c19-amd.js rename to test/chunking-form/samples/filenames-patterns/_expected/amd/chunk-main2-6a714ad3-amd.js diff --git a/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main1-e7c7d1b5-amd.js b/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main1-e7c7d1b5-amd.js deleted file mode 100644 index 791e2547a0f..00000000000 --- a/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main1-e7c7d1b5-amd.js +++ /dev/null @@ -1,5 +0,0 @@ -define(['./chunk-main2-6bb39c19-amd'], function (main2) { 'use strict'; - - main2.log(main2.dep); - -}); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main1-f47d0370-amd.js b/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main1-f47d0370-amd.js new file mode 100644 index 00000000000..2c10541ae90 --- /dev/null +++ b/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main1-f47d0370-amd.js @@ -0,0 +1,5 @@ +define(['./chunk-main2-6a714ad3-amd'], function (main2) { 'use strict'; + + main2.log(main2.dep); + +}); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main2-4db8cd0c-amd.js b/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main2-4db8cd0c-amd.js new file mode 100644 index 00000000000..34d0dd28197 --- /dev/null +++ b/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main2-4db8cd0c-amd.js @@ -0,0 +1,7 @@ +define(['./chunk-main2-6a714ad3-amd'], function (main2) { 'use strict'; + + + + return main2.log; + +}); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main2-f9a2200a-amd.js b/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main2-f9a2200a-amd.js deleted file mode 100644 index 0e357dbc084..00000000000 --- a/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main2-f9a2200a-amd.js +++ /dev/null @@ -1,7 +0,0 @@ -define(['./chunk-main2-6bb39c19-amd'], function (main2) { 'use strict'; - - - - return main2.log; - -}); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/cjs/chunk-main2-33c8b40d-cjs.js b/test/chunking-form/samples/filenames-patterns/_expected/cjs/chunk-main2-397efa8f-cjs.js similarity index 100% rename from test/chunking-form/samples/filenames-patterns/_expected/cjs/chunk-main2-33c8b40d-cjs.js rename to test/chunking-form/samples/filenames-patterns/_expected/cjs/chunk-main2-397efa8f-cjs.js diff --git a/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main1-5358eeba-cjs.js b/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main1-5358eeba-cjs.js new file mode 100644 index 00000000000..5528fde39bd --- /dev/null +++ b/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main1-5358eeba-cjs.js @@ -0,0 +1,5 @@ +'use strict'; + +var main2 = require('./chunk-main2-397efa8f-cjs.js'); + +main2.log(main2.dep); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main1-639831da-cjs.js b/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main1-639831da-cjs.js deleted file mode 100644 index df68f3f3591..00000000000 --- a/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main1-639831da-cjs.js +++ /dev/null @@ -1,5 +0,0 @@ -'use strict'; - -var main2 = require('./chunk-main2-33c8b40d-cjs.js'); - -main2.log(main2.dep); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main2-4508233a-cjs.js b/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main2-4508233a-cjs.js deleted file mode 100644 index 60dc76f979f..00000000000 --- a/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main2-4508233a-cjs.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; - -var main2 = require('./chunk-main2-33c8b40d-cjs.js'); - - - -module.exports = main2.log; diff --git a/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main2-6a001c26-cjs.js b/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main2-6a001c26-cjs.js new file mode 100644 index 00000000000..3479ebb3f9c --- /dev/null +++ b/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main2-6a001c26-cjs.js @@ -0,0 +1,7 @@ +'use strict'; + +var main2 = require('./chunk-main2-397efa8f-cjs.js'); + + + +module.exports = main2.log; diff --git a/test/chunking-form/samples/filenames-patterns/_expected/es/chunk-main2-cc2b1346-esm.js b/test/chunking-form/samples/filenames-patterns/_expected/es/chunk-main2-5251e7d2-esm.js similarity index 100% rename from test/chunking-form/samples/filenames-patterns/_expected/es/chunk-main2-cc2b1346-esm.js rename to test/chunking-form/samples/filenames-patterns/_expected/es/chunk-main2-5251e7d2-esm.js diff --git a/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main1-2901d8b1-esm.js b/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main1-2901d8b1-esm.js deleted file mode 100644 index d269251063e..00000000000 --- a/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main1-2901d8b1-esm.js +++ /dev/null @@ -1,3 +0,0 @@ -import { l as log, d as dep } from './chunk-main2-cc2b1346-esm.js'; - -log(dep); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main1-d5bffcd6-esm.js b/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main1-d5bffcd6-esm.js new file mode 100644 index 00000000000..a3165a74ff8 --- /dev/null +++ b/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main1-d5bffcd6-esm.js @@ -0,0 +1,3 @@ +import { l as log, d as dep } from './chunk-main2-5251e7d2-esm.js'; + +log(dep); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main2-2d73322a-esm.js b/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main2-2d73322a-esm.js new file mode 100644 index 00000000000..8c65aad6124 --- /dev/null +++ b/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main2-2d73322a-esm.js @@ -0,0 +1 @@ +export { l as default } from './chunk-main2-5251e7d2-esm.js'; diff --git a/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main2-62d27906-esm.js b/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main2-62d27906-esm.js deleted file mode 100644 index 780b6aba3d3..00000000000 --- a/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main2-62d27906-esm.js +++ /dev/null @@ -1 +0,0 @@ -export { l as default } from './chunk-main2-cc2b1346-esm.js'; diff --git a/test/chunking-form/samples/filenames-patterns/_expected/system/chunk-main2-63744fb4-system.js b/test/chunking-form/samples/filenames-patterns/_expected/system/chunk-main2-97f5caac-system.js similarity index 100% rename from test/chunking-form/samples/filenames-patterns/_expected/system/chunk-main2-63744fb4-system.js rename to test/chunking-form/samples/filenames-patterns/_expected/system/chunk-main2-97f5caac-system.js diff --git a/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main1-379caf56-system.js b/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main1-e6585a3e-system.js similarity index 72% rename from test/chunking-form/samples/filenames-patterns/_expected/system/entry-main1-379caf56-system.js rename to test/chunking-form/samples/filenames-patterns/_expected/system/entry-main1-e6585a3e-system.js index 56fe0f70e2c..63ae6a96879 100644 --- a/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main1-379caf56-system.js +++ b/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main1-e6585a3e-system.js @@ -1,4 +1,4 @@ -System.register(['./chunk-main2-63744fb4-system.js'], function () { +System.register(['./chunk-main2-97f5caac-system.js'], function () { 'use strict'; var log, dep; return { diff --git a/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main2-9e49ba04-system.js b/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main2-2e964c97-system.js similarity index 69% rename from test/chunking-form/samples/filenames-patterns/_expected/system/entry-main2-9e49ba04-system.js rename to test/chunking-form/samples/filenames-patterns/_expected/system/entry-main2-2e964c97-system.js index 74ee594635c..e36c442c5f5 100644 --- a/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main2-9e49ba04-system.js +++ b/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main2-2e964c97-system.js @@ -1,4 +1,4 @@ -System.register(['./chunk-main2-63744fb4-system.js'], function (exports) { +System.register(['./chunk-main2-97f5caac-system.js'], function (exports) { 'use strict'; return { setters: [function (module) { diff --git a/test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/amd/3eaceb21.js b/test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/amd/4ef5e079.js similarity index 100% rename from test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/amd/3eaceb21.js rename to test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/amd/4ef5e079.js diff --git a/test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/cjs/3257e13f.js b/test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/cjs/be351642.js similarity index 100% rename from test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/cjs/3257e13f.js rename to test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/cjs/be351642.js diff --git a/test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/es/9e951b77.js b/test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/es/4cadb2a6.js similarity index 100% rename from test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/es/9e951b77.js rename to test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/es/4cadb2a6.js diff --git a/test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/system/a6fb0f6b.js b/test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/system/b0f0487c.js similarity index 100% rename from test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/system/a6fb0f6b.js rename to test/chunking-form/samples/tree-shaken-dynamic-hash/_expected/system/b0f0487c.js diff --git a/test/cli/samples/code-splitting-named-default-inputs/_config.js b/test/cli/samples/code-splitting-named-default-inputs/_config.js index 41e9b7c794d..acc79b15858 100644 --- a/test/cli/samples/code-splitting-named-default-inputs/_config.js +++ b/test/cli/samples/code-splitting-named-default-inputs/_config.js @@ -17,13 +17,13 @@ module.exports = { assert.equal( code, '\n' + - `${color}//→ entry1-d8c4343d.js:${standard}\n` + + `${color}//→ entry1-b70571c1.js:${standard}\n` + "console.log('main1');\n" + '\n' + - `${color}//→ Entry 2-99f48ca0.js:${standard}\n` + + `${color}//→ Entry 2-cc781491.js:${standard}\n` + "console.log('main2');\n" + '\n' + - `${color}//→ main3-a6240449.js:${standard}\n` + + `${color}//→ main3-5e259623.js:${standard}\n` + "console.log('main3');\n" ); } diff --git a/test/cli/samples/code-splitting-named-inputs/_config.js b/test/cli/samples/code-splitting-named-inputs/_config.js index dc4affb2b36..ce0141c3e3d 100644 --- a/test/cli/samples/code-splitting-named-inputs/_config.js +++ b/test/cli/samples/code-splitting-named-inputs/_config.js @@ -17,13 +17,13 @@ module.exports = { assert.equal( code, '\n' + - `${color}//→ entry1-d8c4343d.js:${standard}\n` + + `${color}//→ entry1-b70571c1.js:${standard}\n` + "console.log('main1');\n" + '\n' + - `${color}//→ Entry 2-99f48ca0.js:${standard}\n` + + `${color}//→ Entry 2-cc781491.js:${standard}\n` + "console.log('main2');\n" + '\n' + - `${color}//→ main3-a6240449.js:${standard}\n` + + `${color}//→ main3-5e259623.js:${standard}\n` + "console.log('main3');\n" ); } diff --git a/test/file-hashes/index.js b/test/file-hashes/index.js index b5843887694..60f46cf4b98 100644 --- a/test/file-hashes/index.js +++ b/test/file-hashes/index.js @@ -1,7 +1,6 @@ const path = require('path'); const rollup = require('../../dist/rollup'); const { extend, runTestSuiteWithSamples } = require('../utils.js'); -const assert = require('assert'); runTestSuiteWithSamples('file hashes', path.resolve(__dirname, 'samples'), (dir, config) => { (config.skip ? describe.skip : config.solo ? describe.only : describe)( @@ -24,24 +23,41 @@ runTestSuiteWithSamples('file hashes', path.resolve(__dirname, 'samples'), (dir, ) ).then(([generated1, generated2]) => { const fileContentsByHash = new Map(); - addAndCheckFileContentsByHash(fileContentsByHash, generated1); - addAndCheckFileContentsByHash(fileContentsByHash, generated2); + addFileContentsByFileName(fileContentsByHash, generated1); + addFileContentsByFileName(fileContentsByHash, generated2); + if (config.show) { + console.log(fileContentsByHash); + } + for (const contents of fileContentsByHash.values()) { + if (contents.size > 1) { + throw new Error( + `Two chunks contained different code even though the hashes were the same: ${Array.from( + contents + ) + .map(JSON.stringify) + .join(' != ')}` + ); + } + } }); }); } ); }); -function addAndCheckFileContentsByHash(fileContentsByHash, generated) { +function addFileContentsByFileName(fileContentsByFileName, generated) { for (const chunk of generated.output) { - const hash = chunk.fileName; - if (fileContentsByHash.has(hash)) { - assert.equal( - fileContentsByHash.get(hash), - chunk.code, - 'Two chunks contained different code even though the hashes were the same.' - ); + const fileName = chunk.fileName; + if (fileContentsByFileName.has(fileName)) { + fileContentsByFileName.get(fileName).add(chunk.code); + } else { + fileContentsByFileName.set(fileName, new Set([chunk.code])); } - fileContentsByHash.set(hash, chunk.code); } } + +// assert.equal( +// fileContentsByHash.get(hash), +// chunk.code, +// 'Two chunks contained different code even though the hashes were the same.' +// ); diff --git a/test/file-hashes/samples/chunk-name/_config.js b/test/file-hashes/samples/chunk-name/_config.js new file mode 100644 index 00000000000..5e4473d7d48 --- /dev/null +++ b/test/file-hashes/samples/chunk-name/_config.js @@ -0,0 +1,21 @@ +module.exports = { + description: 'creates different hashes if the name pattern differs', + options1: { + input: { + main: 'main', + foo: 'main2' + }, + output: { + entryFileNames: '[name]-[hash].js' + } + }, + options2: { + input: { + main: 'main', + bar: 'main2' + }, + output: { + entryFileNames: '[name]-[hash].js' + } + } +}; diff --git a/test/file-hashes/samples/chunk-name/main.js b/test/file-hashes/samples/chunk-name/main.js new file mode 100644 index 00000000000..d764458aeac --- /dev/null +++ b/test/file-hashes/samples/chunk-name/main.js @@ -0,0 +1,2 @@ +import './main2'; +console.log('main'); diff --git a/test/file-hashes/samples/chunk-name/main2.js b/test/file-hashes/samples/chunk-name/main2.js new file mode 100644 index 00000000000..ac653633351 --- /dev/null +++ b/test/file-hashes/samples/chunk-name/main2.js @@ -0,0 +1 @@ +console.log('main2'); diff --git a/test/file-hashes/samples/name-pattern/_config.js b/test/file-hashes/samples/name-pattern/_config.js new file mode 100644 index 00000000000..e0127aa0aab --- /dev/null +++ b/test/file-hashes/samples/name-pattern/_config.js @@ -0,0 +1,15 @@ +module.exports = { + description: 'creates different hashes if the name pattern differs', + options1: { + input: 'main', + output: { + chunkFileNames: '[hash]-[name]' + } + }, + options2: { + input: 'main', + output: { + chunkFileNames: '[name]-[hash]' + } + } +}; diff --git a/test/file-hashes/samples/name-pattern/dep.js b/test/file-hashes/samples/name-pattern/dep.js new file mode 100644 index 00000000000..46d3ca8c61f --- /dev/null +++ b/test/file-hashes/samples/name-pattern/dep.js @@ -0,0 +1 @@ +export const value = 42; diff --git a/test/file-hashes/samples/name-pattern/main.js b/test/file-hashes/samples/name-pattern/main.js new file mode 100644 index 00000000000..16f5277fbe9 --- /dev/null +++ b/test/file-hashes/samples/name-pattern/main.js @@ -0,0 +1 @@ +import('./dep').then(({ value }) => console.log(value)); diff --git a/test/form/samples/namespace-import-reexport-2/_config.js b/test/form/samples/namespace-import-reexport-2/_config.js new file mode 100644 index 00000000000..a8be2ee28c8 --- /dev/null +++ b/test/form/samples/namespace-import-reexport-2/_config.js @@ -0,0 +1,10 @@ +module.exports = { + description: 'properly associate or shadow variables in and around functions', + options: { + external: ['external1', 'external2'], + output: { + globals: { external1: 'external1', external2: 'external2' }, + name: 'iife' + } + } +}; diff --git a/test/form/samples/namespace-import-reexport-2/_expected/amd.js b/test/form/samples/namespace-import-reexport-2/_expected/amd.js new file mode 100644 index 00000000000..e31cce3d95c --- /dev/null +++ b/test/form/samples/namespace-import-reexport-2/_expected/amd.js @@ -0,0 +1,15 @@ +define(['exports', 'external1', 'external2'], function (exports, external1, external2) { 'use strict'; + + + + Object.defineProperty(exports, 'x', { + enumerable: true, + get: function () { + return external1.x; + } + }); + exports.ext = external2; + + Object.defineProperty(exports, '__esModule', { value: true }); + +}); diff --git a/test/form/samples/namespace-import-reexport-2/_expected/cjs.js b/test/form/samples/namespace-import-reexport-2/_expected/cjs.js new file mode 100644 index 00000000000..0b768501fdc --- /dev/null +++ b/test/form/samples/namespace-import-reexport-2/_expected/cjs.js @@ -0,0 +1,16 @@ +'use strict'; + +Object.defineProperty(exports, '__esModule', { value: true }); + +var external1 = require('external1'); +var external2 = require('external2'); + + + +Object.defineProperty(exports, 'x', { + enumerable: true, + get: function () { + return external1.x; + } +}); +exports.ext = external2; diff --git a/test/form/samples/namespace-import-reexport-2/_expected/es.js b/test/form/samples/namespace-import-reexport-2/_expected/es.js new file mode 100644 index 00000000000..9ea9b96dc05 --- /dev/null +++ b/test/form/samples/namespace-import-reexport-2/_expected/es.js @@ -0,0 +1,3 @@ +export { x } from 'external1'; +import * as external2 from 'external2'; +export { external2 as ext }; diff --git a/test/form/samples/namespace-import-reexport-2/_expected/iife.js b/test/form/samples/namespace-import-reexport-2/_expected/iife.js new file mode 100644 index 00000000000..d9c4fd7c415 --- /dev/null +++ b/test/form/samples/namespace-import-reexport-2/_expected/iife.js @@ -0,0 +1,16 @@ +var iife = (function (exports, external1, external2) { + 'use strict'; + + + + Object.defineProperty(exports, 'x', { + enumerable: true, + get: function () { + return external1.x; + } + }); + exports.ext = external2; + + return exports; + +}({}, external1, external2)); diff --git a/test/form/samples/namespace-import-reexport-2/_expected/system.js b/test/form/samples/namespace-import-reexport-2/_expected/system.js new file mode 100644 index 00000000000..9da3b2bee66 --- /dev/null +++ b/test/form/samples/namespace-import-reexport-2/_expected/system.js @@ -0,0 +1,15 @@ +System.register('iife', ['external1', 'external2'], function (exports) { + 'use strict'; + return { + setters: [function (module) { + exports('x', module.x); + }, function (module) { + exports('ext', module); + }], + execute: function () { + + + + } + }; +}); diff --git a/test/form/samples/namespace-import-reexport-2/_expected/umd.js b/test/form/samples/namespace-import-reexport-2/_expected/umd.js new file mode 100644 index 00000000000..f42e0602048 --- /dev/null +++ b/test/form/samples/namespace-import-reexport-2/_expected/umd.js @@ -0,0 +1,17 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('external1'), require('external2')) : + typeof define === 'function' && define.amd ? define(['exports', 'external1', 'external2'], factory) : + (global = global || self, factory(global.iife = {}, global.external1, global.external2)); +}(this, function (exports, external1, external2) { 'use strict'; + + Object.defineProperty(exports, 'x', { + enumerable: true, + get: function () { + return external1.x; + } + }); + exports.ext = external2; + + Object.defineProperty(exports, '__esModule', { value: true }); + +})); diff --git a/test/form/samples/namespace-import-reexport-2/main.js b/test/form/samples/namespace-import-reexport-2/main.js new file mode 100644 index 00000000000..90201693a81 --- /dev/null +++ b/test/form/samples/namespace-import-reexport-2/main.js @@ -0,0 +1,3 @@ +export { x } from 'external1'; +import * as ext from 'external2'; +export { ext }; diff --git a/test/form/samples/re-export-default-external-as-default/_config.js b/test/form/samples/re-export-default-external-as-default/_config.js deleted file mode 100644 index c4ec766d6b2..00000000000 --- a/test/form/samples/re-export-default-external-as-default/_config.js +++ /dev/null @@ -1,11 +0,0 @@ -module.exports = { - description: 're-exports a default external import as default export (when using named exports)', - options: { - output: { - globals: { external: 'external' }, - name: 'reexportsDefaultExternalAsDefault', - exports: 'named' - }, - external: ['external'] - } -}; diff --git a/test/form/samples/re-export-default-external/_config.js b/test/form/samples/re-export-default-external/_config.js deleted file mode 100644 index 1a259e389ca..00000000000 --- a/test/form/samples/re-export-default-external/_config.js +++ /dev/null @@ -1,10 +0,0 @@ -module.exports = { - description: 're-exports a default import', - options: { - output: { - globals: { external: 'external' }, - name: 'reexportsDefaultExternal' - }, - external: ['external'] - } -}; diff --git a/test/form/samples/reexport-external-default-and-name/_config.js b/test/form/samples/reexport-external-default-and-name/_config.js new file mode 100644 index 00000000000..6e8c12c648f --- /dev/null +++ b/test/form/samples/reexport-external-default-and-name/_config.js @@ -0,0 +1,12 @@ +module.exports = { + description: + 'reexports a an external default as a name and imports another name from that dependency', + expectedWarnings: ['MIXED_EXPORTS'], + options: { + external: ['external'], + output: { + globals: { external: 'external' }, + name: 'bundle' + } + } +}; diff --git a/test/form/samples/reexport-external-default-and-name/_expected/amd.js b/test/form/samples/reexport-external-default-and-name/_expected/amd.js new file mode 100644 index 00000000000..6884f896916 --- /dev/null +++ b/test/form/samples/reexport-external-default-and-name/_expected/amd.js @@ -0,0 +1,12 @@ +define(['exports', 'external'], function (exports, external) { 'use strict'; + + external = external && external.hasOwnProperty('default') ? external['default'] : external; + + const value = 42; + + exports.default = external; + exports.value = value; + + Object.defineProperty(exports, '__esModule', { value: true }); + +}); diff --git a/test/form/samples/reexport-external-default-and-name/_expected/cjs.js b/test/form/samples/reexport-external-default-and-name/_expected/cjs.js new file mode 100644 index 00000000000..afdcda8ee27 --- /dev/null +++ b/test/form/samples/reexport-external-default-and-name/_expected/cjs.js @@ -0,0 +1,12 @@ +'use strict'; + +Object.defineProperty(exports, '__esModule', { value: true }); + +function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; } + +var external = _interopDefault(require('external')); + +const value = 42; + +exports.default = external; +exports.value = value; diff --git a/test/form/samples/reexport-external-default-and-name/_expected/es.js b/test/form/samples/reexport-external-default-and-name/_expected/es.js new file mode 100644 index 00000000000..7d95a1b2203 --- /dev/null +++ b/test/form/samples/reexport-external-default-and-name/_expected/es.js @@ -0,0 +1,5 @@ +export { default } from 'external'; + +const value = 42; + +export { value }; diff --git a/test/form/samples/reexport-external-default-and-name/_expected/iife.js b/test/form/samples/reexport-external-default-and-name/_expected/iife.js new file mode 100644 index 00000000000..bd001fe2f10 --- /dev/null +++ b/test/form/samples/reexport-external-default-and-name/_expected/iife.js @@ -0,0 +1,13 @@ +var bundle = (function (exports, external) { + 'use strict'; + + external = external && external.hasOwnProperty('default') ? external['default'] : external; + + const value = 42; + + exports.default = external; + exports.value = value; + + return exports; + +}({}, external)); diff --git a/test/form/samples/reexport-external-default-and-name/_expected/system.js b/test/form/samples/reexport-external-default-and-name/_expected/system.js new file mode 100644 index 00000000000..8791e72c586 --- /dev/null +++ b/test/form/samples/reexport-external-default-and-name/_expected/system.js @@ -0,0 +1,13 @@ +System.register('bundle', ['external'], function (exports) { + 'use strict'; + return { + setters: [function (module) { + exports('default', module.default); + }], + execute: function () { + + const value = exports('value', 42); + + } + }; +}); diff --git a/test/form/samples/reexport-external-default-and-name/_expected/umd.js b/test/form/samples/reexport-external-default-and-name/_expected/umd.js new file mode 100644 index 00000000000..7b502be23da --- /dev/null +++ b/test/form/samples/reexport-external-default-and-name/_expected/umd.js @@ -0,0 +1,16 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('external')) : + typeof define === 'function' && define.amd ? define(['exports', 'external'], factory) : + (global = global || self, factory(global.bundle = {}, global.external)); +}(this, function (exports, external) { 'use strict'; + + external = external && external.hasOwnProperty('default') ? external['default'] : external; + + const value = 42; + + exports.default = external; + exports.value = value; + + Object.defineProperty(exports, '__esModule', { value: true }); + +})); diff --git a/test/form/samples/reexport-external-default-and-name/main.js b/test/form/samples/reexport-external-default-and-name/main.js new file mode 100644 index 00000000000..804917476db --- /dev/null +++ b/test/form/samples/reexport-external-default-and-name/main.js @@ -0,0 +1,2 @@ +export { default } from 'external'; +export const value = 42; diff --git a/test/form/samples/reexport-external-default-and-namespace/_config.js b/test/form/samples/reexport-external-default-and-namespace/_config.js new file mode 100644 index 00000000000..6af73286dd4 --- /dev/null +++ b/test/form/samples/reexport-external-default-and-namespace/_config.js @@ -0,0 +1,11 @@ +module.exports = { + description: 'reexports a default external import as default export (when using named exports)', + options: { + output: { + globals: { external: 'external' }, + name: 'bundle', + exports: 'named' + }, + external: ['external'] + } +}; diff --git a/test/form/samples/re-export-default-external-as-default/_expected/amd.js b/test/form/samples/reexport-external-default-and-namespace/_expected/amd.js similarity index 100% rename from test/form/samples/re-export-default-external-as-default/_expected/amd.js rename to test/form/samples/reexport-external-default-and-namespace/_expected/amd.js diff --git a/test/form/samples/re-export-default-external-as-default/_expected/cjs.js b/test/form/samples/reexport-external-default-and-namespace/_expected/cjs.js similarity index 100% rename from test/form/samples/re-export-default-external-as-default/_expected/cjs.js rename to test/form/samples/reexport-external-default-and-namespace/_expected/cjs.js diff --git a/test/form/samples/re-export-default-external-as-default/_expected/es.js b/test/form/samples/reexport-external-default-and-namespace/_expected/es.js similarity index 100% rename from test/form/samples/re-export-default-external-as-default/_expected/es.js rename to test/form/samples/reexport-external-default-and-namespace/_expected/es.js diff --git a/test/form/samples/re-export-default-external-as-default/_expected/iife.js b/test/form/samples/reexport-external-default-and-namespace/_expected/iife.js similarity index 83% rename from test/form/samples/re-export-default-external-as-default/_expected/iife.js rename to test/form/samples/reexport-external-default-and-namespace/_expected/iife.js index e8abf1dbe07..439dafcadd0 100644 --- a/test/form/samples/re-export-default-external-as-default/_expected/iife.js +++ b/test/form/samples/reexport-external-default-and-namespace/_expected/iife.js @@ -1,4 +1,4 @@ -var reexportsDefaultExternalAsDefault = (function (exports, external) { +var bundle = (function (exports, external) { 'use strict'; var external__default = 'default' in external ? external['default'] : external; diff --git a/test/form/samples/re-export-default-external-as-default/_expected/system.js b/test/form/samples/reexport-external-default-and-namespace/_expected/system.js similarity index 77% rename from test/form/samples/re-export-default-external-as-default/_expected/system.js rename to test/form/samples/reexport-external-default-and-namespace/_expected/system.js index 5e411938e62..35e2ee4b4a8 100644 --- a/test/form/samples/re-export-default-external-as-default/_expected/system.js +++ b/test/form/samples/reexport-external-default-and-namespace/_expected/system.js @@ -1,4 +1,4 @@ -System.register('reexportsDefaultExternalAsDefault', ['external'], function (exports) { +System.register('bundle', ['external'], function (exports) { 'use strict'; var _starExcludes = { default: 1 }; return { diff --git a/test/form/samples/re-export-default-external-as-default/_expected/umd.js b/test/form/samples/reexport-external-default-and-namespace/_expected/umd.js similarity index 86% rename from test/form/samples/re-export-default-external-as-default/_expected/umd.js rename to test/form/samples/reexport-external-default-and-namespace/_expected/umd.js index a4a1a434e88..ae54b6806bc 100644 --- a/test/form/samples/re-export-default-external-as-default/_expected/umd.js +++ b/test/form/samples/reexport-external-default-and-namespace/_expected/umd.js @@ -1,7 +1,7 @@ (function (global, factory) { typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('external')) : typeof define === 'function' && define.amd ? define(['exports', 'external'], factory) : - (global = global || self, factory(global.reexportsDefaultExternalAsDefault = {}, global.external)); + (global = global || self, factory(global.bundle = {}, global.external)); }(this, function (exports, external) { 'use strict'; var external__default = 'default' in external ? external['default'] : external; diff --git a/test/form/samples/re-export-default-external-as-default/main.js b/test/form/samples/reexport-external-default-and-namespace/main.js similarity index 100% rename from test/form/samples/re-export-default-external-as-default/main.js rename to test/form/samples/reexport-external-default-and-namespace/main.js diff --git a/test/form/samples/reexport-external-default-as-name-and-name/_config.js b/test/form/samples/reexport-external-default-as-name-and-name/_config.js new file mode 100644 index 00000000000..5ccfb6e52a1 --- /dev/null +++ b/test/form/samples/reexport-external-default-as-name-and-name/_config.js @@ -0,0 +1,11 @@ +module.exports = { + description: 're-exports a named external export as default', + expectedWarnings: ['MIXED_EXPORTS'], + options: { + external: ['external'], + output: { + globals: { external: 'external' }, + name: 'bundle' + } + } +}; diff --git a/test/form/samples/reexport-external-default-as-name-and-name/_expected/amd.js b/test/form/samples/reexport-external-default-as-name-and-name/_expected/amd.js new file mode 100644 index 00000000000..f7d2f9738b6 --- /dev/null +++ b/test/form/samples/reexport-external-default-as-name-and-name/_expected/amd.js @@ -0,0 +1,11 @@ +define(['exports', 'external'], function (exports, external) { 'use strict'; + + var external__default = 'default' in external ? external['default'] : external; + + console.log(external.value); + + exports.reexported = external__default; + + Object.defineProperty(exports, '__esModule', { value: true }); + +}); diff --git a/test/form/samples/reexport-external-default-as-name-and-name/_expected/cjs.js b/test/form/samples/reexport-external-default-as-name-and-name/_expected/cjs.js new file mode 100644 index 00000000000..bc9957bb8ba --- /dev/null +++ b/test/form/samples/reexport-external-default-as-name-and-name/_expected/cjs.js @@ -0,0 +1,12 @@ +'use strict'; + +Object.defineProperty(exports, '__esModule', { value: true }); + +function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; } + +var external = require('external'); +var external__default = _interopDefault(external); + +console.log(external.value); + +exports.reexported = external__default; diff --git a/test/form/samples/reexport-external-default-as-name-and-name/_expected/es.js b/test/form/samples/reexport-external-default-as-name-and-name/_expected/es.js new file mode 100644 index 00000000000..f1f07c98fff --- /dev/null +++ b/test/form/samples/reexport-external-default-as-name-and-name/_expected/es.js @@ -0,0 +1,4 @@ +import { value } from 'external'; +export { default as reexported } from 'external'; + +console.log(value); diff --git a/test/form/samples/reexport-external-default-as-name-and-name/_expected/iife.js b/test/form/samples/reexport-external-default-as-name-and-name/_expected/iife.js new file mode 100644 index 00000000000..30afb56f290 --- /dev/null +++ b/test/form/samples/reexport-external-default-as-name-and-name/_expected/iife.js @@ -0,0 +1,12 @@ +var bundle = (function (exports, external) { + 'use strict'; + + var external__default = 'default' in external ? external['default'] : external; + + console.log(external.value); + + exports.reexported = external__default; + + return exports; + +}({}, external)); diff --git a/test/form/samples/reexport-external-default-as-name-and-name/_expected/system.js b/test/form/samples/reexport-external-default-as-name-and-name/_expected/system.js new file mode 100644 index 00000000000..1b3c4676de4 --- /dev/null +++ b/test/form/samples/reexport-external-default-as-name-and-name/_expected/system.js @@ -0,0 +1,15 @@ +System.register('bundle', ['external'], function (exports) { + 'use strict'; + var value; + return { + setters: [function (module) { + value = module.value; + exports('reexported', module.default); + }], + execute: function () { + + console.log(value); + + } + }; +}); diff --git a/test/form/samples/reexports-name-from-external/_expected/umd.js b/test/form/samples/reexport-external-default-as-name-and-name/_expected/umd.js similarity index 60% rename from test/form/samples/reexports-name-from-external/_expected/umd.js rename to test/form/samples/reexport-external-default-as-name-and-name/_expected/umd.js index b0d5278f377..063e89a0d64 100644 --- a/test/form/samples/reexports-name-from-external/_expected/umd.js +++ b/test/form/samples/reexport-external-default-as-name-and-name/_expected/umd.js @@ -1,15 +1,14 @@ (function (global, factory) { typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('external')) : typeof define === 'function' && define.amd ? define(['exports', 'external'], factory) : - (global = global || self, factory(global.myBundle = {}, global.external)); + (global = global || self, factory(global.bundle = {}, global.external)); }(this, function (exports, external) { 'use strict'; - Object.defineProperty(exports, 'foo', { - enumerable: true, - get: function () { - return external.foo; - } - }); + var external__default = 'default' in external ? external['default'] : external; + + console.log(external.value); + + exports.reexported = external__default; Object.defineProperty(exports, '__esModule', { value: true }); diff --git a/test/form/samples/reexport-external-default-as-name-and-name/main.js b/test/form/samples/reexport-external-default-as-name-and-name/main.js new file mode 100644 index 00000000000..3612bf7cfac --- /dev/null +++ b/test/form/samples/reexport-external-default-as-name-and-name/main.js @@ -0,0 +1,3 @@ +export { default as reexported } from 'external'; +import {value} from 'external'; +console.log(value); diff --git a/test/form/samples/reexport-external-default/_config.js b/test/form/samples/reexport-external-default/_config.js new file mode 100644 index 00000000000..17dee117ebb --- /dev/null +++ b/test/form/samples/reexport-external-default/_config.js @@ -0,0 +1,10 @@ +module.exports = { + description: 'reexports an external default export', + options: { + external: ['external1', 'external2'], + output: { + globals: { external1: 'external1', external2: 'external2' }, + name: 'bundle' + } + } +}; diff --git a/test/form/samples/reexport-external-default/_expected/amd.js b/test/form/samples/reexport-external-default/_expected/amd.js new file mode 100644 index 00000000000..44863dc1288 --- /dev/null +++ b/test/form/samples/reexport-external-default/_expected/amd.js @@ -0,0 +1,9 @@ +define(['external1', 'external2'], function (external1, external2) { 'use strict'; + + external2 = external2 && external2.hasOwnProperty('default') ? external2['default'] : external2; + + console.log(external1.foo); + + return external2; + +}); diff --git a/test/form/samples/reexport-external-default/_expected/cjs.js b/test/form/samples/reexport-external-default/_expected/cjs.js new file mode 100644 index 00000000000..fce42369eb4 --- /dev/null +++ b/test/form/samples/reexport-external-default/_expected/cjs.js @@ -0,0 +1,10 @@ +'use strict'; + +function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; } + +var external1 = require('external1'); +var external2 = _interopDefault(require('external2')); + +console.log(external1.foo); + +module.exports = external2; diff --git a/test/form/samples/reexport-external-default/_expected/es.js b/test/form/samples/reexport-external-default/_expected/es.js new file mode 100644 index 00000000000..294b431269c --- /dev/null +++ b/test/form/samples/reexport-external-default/_expected/es.js @@ -0,0 +1,4 @@ +import { foo } from 'external1'; +export { default } from 'external2'; + +console.log(foo); diff --git a/test/form/samples/reexport-external-default/_expected/iife.js b/test/form/samples/reexport-external-default/_expected/iife.js new file mode 100644 index 00000000000..7d9a819618e --- /dev/null +++ b/test/form/samples/reexport-external-default/_expected/iife.js @@ -0,0 +1,10 @@ +var bundle = (function (external1, external2) { + 'use strict'; + + external2 = external2 && external2.hasOwnProperty('default') ? external2['default'] : external2; + + console.log(external1.foo); + + return external2; + +}(external1, external2)); diff --git a/test/form/samples/reexport-external-default/_expected/system.js b/test/form/samples/reexport-external-default/_expected/system.js new file mode 100644 index 00000000000..42d170c3da2 --- /dev/null +++ b/test/form/samples/reexport-external-default/_expected/system.js @@ -0,0 +1,16 @@ +System.register('bundle', ['external1', 'external2'], function (exports) { + 'use strict'; + var foo; + return { + setters: [function (module) { + foo = module.foo; + }, function (module) { + exports('default', module.default); + }], + execute: function () { + + console.log(foo); + + } + }; +}); diff --git a/test/form/samples/reexport-external-default/_expected/umd.js b/test/form/samples/reexport-external-default/_expected/umd.js new file mode 100644 index 00000000000..c50e069feca --- /dev/null +++ b/test/form/samples/reexport-external-default/_expected/umd.js @@ -0,0 +1,13 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('external1'), require('external2')) : + typeof define === 'function' && define.amd ? define(['external1', 'external2'], factory) : + (global = global || self, global.bundle = factory(global.external1, global.external2)); +}(this, function (external1, external2) { 'use strict'; + + external2 = external2 && external2.hasOwnProperty('default') ? external2['default'] : external2; + + console.log(external1.foo); + + return external2; + +})); diff --git a/test/form/samples/reexport-external-default/main.js b/test/form/samples/reexport-external-default/main.js new file mode 100644 index 00000000000..ee66642e983 --- /dev/null +++ b/test/form/samples/reexport-external-default/main.js @@ -0,0 +1,3 @@ +import { foo } from 'external1'; +export { default } from 'external2'; +console.log(foo); diff --git a/test/form/samples/reexports-name-from-external/_config.js b/test/form/samples/reexport-external-name-as-default/_config.js similarity index 59% rename from test/form/samples/reexports-name-from-external/_config.js rename to test/form/samples/reexport-external-name-as-default/_config.js index 002f1649b1c..76bfd0844be 100644 --- a/test/form/samples/reexports-name-from-external/_config.js +++ b/test/form/samples/reexport-external-name-as-default/_config.js @@ -1,10 +1,10 @@ module.exports = { - description: 're-exports name from external module', + description: 're-exports a named external export as default', options: { external: ['external'], output: { globals: { external: 'external' }, - name: 'myBundle' + name: 'bundle' } } }; diff --git a/test/form/samples/reexport-external-name-as-default/_expected/amd.js b/test/form/samples/reexport-external-name-as-default/_expected/amd.js new file mode 100644 index 00000000000..ccae8803919 --- /dev/null +++ b/test/form/samples/reexport-external-name-as-default/_expected/amd.js @@ -0,0 +1,7 @@ +define(['external'], function (external) { 'use strict'; + + + + return external.value; + +}); diff --git a/test/form/samples/reexport-external-name-as-default/_expected/cjs.js b/test/form/samples/reexport-external-name-as-default/_expected/cjs.js new file mode 100644 index 00000000000..760a57c17d3 --- /dev/null +++ b/test/form/samples/reexport-external-name-as-default/_expected/cjs.js @@ -0,0 +1,7 @@ +'use strict'; + +var external = require('external'); + + + +module.exports = external.value; diff --git a/test/form/samples/reexport-external-name-as-default/_expected/es.js b/test/form/samples/reexport-external-name-as-default/_expected/es.js new file mode 100644 index 00000000000..44f45020388 --- /dev/null +++ b/test/form/samples/reexport-external-name-as-default/_expected/es.js @@ -0,0 +1 @@ +export { value as default } from 'external'; diff --git a/test/form/samples/reexport-external-name-as-default/_expected/iife.js b/test/form/samples/reexport-external-name-as-default/_expected/iife.js new file mode 100644 index 00000000000..fc92c34817f --- /dev/null +++ b/test/form/samples/reexport-external-name-as-default/_expected/iife.js @@ -0,0 +1,8 @@ +var bundle = (function (external) { + 'use strict'; + + + + return external.value; + +}(external)); diff --git a/test/form/samples/reexports-name-from-external/_expected/system.js b/test/form/samples/reexport-external-name-as-default/_expected/system.js similarity index 51% rename from test/form/samples/reexports-name-from-external/_expected/system.js rename to test/form/samples/reexport-external-name-as-default/_expected/system.js index dbb57734310..3c99a21cd8d 100644 --- a/test/form/samples/reexports-name-from-external/_expected/system.js +++ b/test/form/samples/reexport-external-name-as-default/_expected/system.js @@ -1,8 +1,8 @@ -System.register('myBundle', ['external'], function (exports) { +System.register('bundle', ['external'], function (exports) { 'use strict'; return { setters: [function (module) { - exports('foo', module.foo); + exports('default', module.value); }], execute: function () { diff --git a/test/form/samples/reexport-external-name-as-default/_expected/umd.js b/test/form/samples/reexport-external-name-as-default/_expected/umd.js new file mode 100644 index 00000000000..310cc530610 --- /dev/null +++ b/test/form/samples/reexport-external-name-as-default/_expected/umd.js @@ -0,0 +1,9 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('external')) : + typeof define === 'function' && define.amd ? define(['external'], factory) : + (global = global || self, global.bundle = factory(global.external)); +}(this, function (external) { 'use strict'; + + return external.value; + +})); diff --git a/test/form/samples/reexport-external-name-as-default/main.js b/test/form/samples/reexport-external-name-as-default/main.js new file mode 100644 index 00000000000..44f45020388 --- /dev/null +++ b/test/form/samples/reexport-external-name-as-default/main.js @@ -0,0 +1 @@ +export { value as default } from 'external'; diff --git a/test/form/samples/reexport-external-name-as-default2/_config.js b/test/form/samples/reexport-external-name-as-default2/_config.js new file mode 100644 index 00000000000..ca3e78aa86f --- /dev/null +++ b/test/form/samples/reexport-external-name-as-default2/_config.js @@ -0,0 +1,10 @@ +module.exports = { + description: 're-exports a named external export as default via another file', + options: { + external: ['external'], + output: { + globals: { external: 'external' }, + name: 'bundle' + } + } +}; diff --git a/test/form/samples/re-export-default-external/_expected/amd.js b/test/form/samples/reexport-external-name-as-default2/_expected/amd.js similarity index 100% rename from test/form/samples/re-export-default-external/_expected/amd.js rename to test/form/samples/reexport-external-name-as-default2/_expected/amd.js diff --git a/test/form/samples/re-export-default-external/_expected/cjs.js b/test/form/samples/reexport-external-name-as-default2/_expected/cjs.js similarity index 100% rename from test/form/samples/re-export-default-external/_expected/cjs.js rename to test/form/samples/reexport-external-name-as-default2/_expected/cjs.js diff --git a/test/form/samples/re-export-default-external/_expected/es.js b/test/form/samples/reexport-external-name-as-default2/_expected/es.js similarity index 100% rename from test/form/samples/re-export-default-external/_expected/es.js rename to test/form/samples/reexport-external-name-as-default2/_expected/es.js diff --git a/test/form/samples/re-export-default-external/_expected/iife.js b/test/form/samples/reexport-external-name-as-default2/_expected/iife.js similarity index 52% rename from test/form/samples/re-export-default-external/_expected/iife.js rename to test/form/samples/reexport-external-name-as-default2/_expected/iife.js index ff349936953..10d6c813a61 100644 --- a/test/form/samples/re-export-default-external/_expected/iife.js +++ b/test/form/samples/reexport-external-name-as-default2/_expected/iife.js @@ -1,4 +1,4 @@ -var reexportsDefaultExternal = (function (external) { +var bundle = (function (external) { 'use strict'; diff --git a/test/form/samples/re-export-default-external/_expected/system.js b/test/form/samples/reexport-external-name-as-default2/_expected/system.js similarity index 64% rename from test/form/samples/re-export-default-external/_expected/system.js rename to test/form/samples/reexport-external-name-as-default2/_expected/system.js index f36d2e27e7f..9b52f598eb2 100644 --- a/test/form/samples/re-export-default-external/_expected/system.js +++ b/test/form/samples/reexport-external-name-as-default2/_expected/system.js @@ -1,4 +1,4 @@ -System.register('reexportsDefaultExternal', ['external'], function (exports) { +System.register('bundle', ['external'], function (exports) { 'use strict'; return { setters: [function (module) { diff --git a/test/form/samples/re-export-default-external/_expected/umd.js b/test/form/samples/reexport-external-name-as-default2/_expected/umd.js similarity index 77% rename from test/form/samples/re-export-default-external/_expected/umd.js rename to test/form/samples/reexport-external-name-as-default2/_expected/umd.js index d8a666e8265..908f69f1383 100644 --- a/test/form/samples/re-export-default-external/_expected/umd.js +++ b/test/form/samples/reexport-external-name-as-default2/_expected/umd.js @@ -1,7 +1,7 @@ (function (global, factory) { typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('external')) : typeof define === 'function' && define.amd ? define(['external'], factory) : - (global = global || self, global.reexportsDefaultExternal = factory(global.external)); + (global = global || self, global.bundle = factory(global.external)); }(this, function (external) { 'use strict'; return external.objAlias; diff --git a/test/form/samples/re-export-default-external/first.js b/test/form/samples/reexport-external-name-as-default2/first.js similarity index 100% rename from test/form/samples/re-export-default-external/first.js rename to test/form/samples/reexport-external-name-as-default2/first.js diff --git a/test/form/samples/re-export-default-external/main.js b/test/form/samples/reexport-external-name-as-default2/main.js similarity index 100% rename from test/form/samples/re-export-default-external/main.js rename to test/form/samples/reexport-external-name-as-default2/main.js diff --git a/test/form/samples/reexport-external-name/_config.js b/test/form/samples/reexport-external-name/_config.js new file mode 100644 index 00000000000..e64e3c7b2c0 --- /dev/null +++ b/test/form/samples/reexport-external-name/_config.js @@ -0,0 +1,10 @@ +module.exports = { + description: 're-exports a named export from an external module', + options: { + external: ['external1', 'external2'], + output: { + globals: { external1: 'external1', external2: 'external2' }, + name: 'bundle' + } + } +}; diff --git a/test/form/samples/reexport-external-name/_expected/amd.js b/test/form/samples/reexport-external-name/_expected/amd.js new file mode 100644 index 00000000000..4f91cd0a717 --- /dev/null +++ b/test/form/samples/reexport-external-name/_expected/amd.js @@ -0,0 +1,20 @@ +define(['exports', 'external1', 'external2'], function (exports, external1, external2) { 'use strict'; + + + + Object.defineProperty(exports, 'foo', { + enumerable: true, + get: function () { + return external1.foo; + } + }); + Object.defineProperty(exports, 'bar', { + enumerable: true, + get: function () { + return external2.foo; + } + }); + + Object.defineProperty(exports, '__esModule', { value: true }); + +}); diff --git a/test/form/samples/reexport-external-name/_expected/cjs.js b/test/form/samples/reexport-external-name/_expected/cjs.js new file mode 100644 index 00000000000..06061bbe91c --- /dev/null +++ b/test/form/samples/reexport-external-name/_expected/cjs.js @@ -0,0 +1,21 @@ +'use strict'; + +Object.defineProperty(exports, '__esModule', { value: true }); + +var external1 = require('external1'); +var external2 = require('external2'); + + + +Object.defineProperty(exports, 'foo', { + enumerable: true, + get: function () { + return external1.foo; + } +}); +Object.defineProperty(exports, 'bar', { + enumerable: true, + get: function () { + return external2.foo; + } +}); diff --git a/test/form/samples/reexport-external-name/_expected/es.js b/test/form/samples/reexport-external-name/_expected/es.js new file mode 100644 index 00000000000..67604d43e4c --- /dev/null +++ b/test/form/samples/reexport-external-name/_expected/es.js @@ -0,0 +1,2 @@ +export { foo } from 'external1'; +export { foo as bar } from 'external2'; diff --git a/test/form/samples/reexport-external-name/_expected/iife.js b/test/form/samples/reexport-external-name/_expected/iife.js new file mode 100644 index 00000000000..0a1db335888 --- /dev/null +++ b/test/form/samples/reexport-external-name/_expected/iife.js @@ -0,0 +1,21 @@ +var bundle = (function (exports, external1, external2) { + 'use strict'; + + + + Object.defineProperty(exports, 'foo', { + enumerable: true, + get: function () { + return external1.foo; + } + }); + Object.defineProperty(exports, 'bar', { + enumerable: true, + get: function () { + return external2.foo; + } + }); + + return exports; + +}({}, external1, external2)); diff --git a/test/form/samples/reexport-external-name/_expected/system.js b/test/form/samples/reexport-external-name/_expected/system.js new file mode 100644 index 00000000000..73367c2fca4 --- /dev/null +++ b/test/form/samples/reexport-external-name/_expected/system.js @@ -0,0 +1,15 @@ +System.register('bundle', ['external1', 'external2'], function (exports) { + 'use strict'; + return { + setters: [function (module) { + exports('foo', module.foo); + }, function (module) { + exports('bar', module.foo); + }], + execute: function () { + + + + } + }; +}); diff --git a/test/form/samples/reexport-external-name/_expected/umd.js b/test/form/samples/reexport-external-name/_expected/umd.js new file mode 100644 index 00000000000..c7943baff5e --- /dev/null +++ b/test/form/samples/reexport-external-name/_expected/umd.js @@ -0,0 +1,22 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('external1'), require('external2')) : + typeof define === 'function' && define.amd ? define(['exports', 'external1', 'external2'], factory) : + (global = global || self, factory(global.bundle = {}, global.external1, global.external2)); +}(this, function (exports, external1, external2) { 'use strict'; + + Object.defineProperty(exports, 'foo', { + enumerable: true, + get: function () { + return external1.foo; + } + }); + Object.defineProperty(exports, 'bar', { + enumerable: true, + get: function () { + return external2.foo; + } + }); + + Object.defineProperty(exports, '__esModule', { value: true }); + +})); diff --git a/test/form/samples/reexport-external-name/main.js b/test/form/samples/reexport-external-name/main.js new file mode 100644 index 00000000000..67604d43e4c --- /dev/null +++ b/test/form/samples/reexport-external-name/main.js @@ -0,0 +1,2 @@ +export { foo } from 'external1'; +export { foo as bar } from 'external2'; diff --git a/test/form/samples/reexports-from-external/_config.js b/test/form/samples/reexport-external-namespace/_config.js similarity index 89% rename from test/form/samples/reexports-from-external/_config.js rename to test/form/samples/reexport-external-namespace/_config.js index 5fb03551aa5..9ffdafe8b0f 100644 --- a/test/form/samples/reexports-from-external/_config.js +++ b/test/form/samples/reexport-external-namespace/_config.js @@ -4,7 +4,7 @@ module.exports = { external: ['external'], output: { globals: { external: 'external' }, - name: 'myBundle' + name: 'bundle' } } }; diff --git a/test/form/samples/reexports-from-external/_expected/amd.js b/test/form/samples/reexport-external-namespace/_expected/amd.js similarity index 100% rename from test/form/samples/reexports-from-external/_expected/amd.js rename to test/form/samples/reexport-external-namespace/_expected/amd.js diff --git a/test/form/samples/reexports-from-external/_expected/cjs.js b/test/form/samples/reexport-external-namespace/_expected/cjs.js similarity index 100% rename from test/form/samples/reexports-from-external/_expected/cjs.js rename to test/form/samples/reexport-external-namespace/_expected/cjs.js diff --git a/test/form/samples/reexports-from-external/_expected/es.js b/test/form/samples/reexport-external-namespace/_expected/es.js similarity index 100% rename from test/form/samples/reexports-from-external/_expected/es.js rename to test/form/samples/reexport-external-namespace/_expected/es.js diff --git a/test/form/samples/reexports-from-external/_expected/iife.js b/test/form/samples/reexport-external-namespace/_expected/iife.js similarity index 83% rename from test/form/samples/reexports-from-external/_expected/iife.js rename to test/form/samples/reexport-external-namespace/_expected/iife.js index 7d256f28988..e8785f48a07 100644 --- a/test/form/samples/reexports-from-external/_expected/iife.js +++ b/test/form/samples/reexport-external-namespace/_expected/iife.js @@ -1,4 +1,4 @@ -var myBundle = (function (exports, external) { +var bundle = (function (exports, external) { 'use strict'; diff --git a/test/form/samples/reexports-from-external/_expected/system.js b/test/form/samples/reexport-external-namespace/_expected/system.js similarity index 81% rename from test/form/samples/reexports-from-external/_expected/system.js rename to test/form/samples/reexport-external-namespace/_expected/system.js index a2b08322d73..5d92a82f4fe 100644 --- a/test/form/samples/reexports-from-external/_expected/system.js +++ b/test/form/samples/reexport-external-namespace/_expected/system.js @@ -1,4 +1,4 @@ -System.register('myBundle', ['external'], function (exports) { +System.register('bundle', ['external'], function (exports) { 'use strict'; var _starExcludes = { default: 1 }; return { diff --git a/test/form/samples/reexports-from-external/_expected/umd.js b/test/form/samples/reexport-external-namespace/_expected/umd.js similarity index 87% rename from test/form/samples/reexports-from-external/_expected/umd.js rename to test/form/samples/reexport-external-namespace/_expected/umd.js index 5f89f7b61af..0f7f7be3e78 100644 --- a/test/form/samples/reexports-from-external/_expected/umd.js +++ b/test/form/samples/reexport-external-namespace/_expected/umd.js @@ -1,7 +1,7 @@ (function (global, factory) { typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('external')) : typeof define === 'function' && define.amd ? define(['exports', 'external'], factory) : - (global = global || self, factory(global.myBundle = {}, global.external)); + (global = global || self, factory(global.bundle = {}, global.external)); }(this, function (exports, external) { 'use strict'; Object.keys(external).forEach(function (k) { diff --git a/test/form/samples/reexports-from-external/main.js b/test/form/samples/reexport-external-namespace/main.js similarity index 100% rename from test/form/samples/reexports-from-external/main.js rename to test/form/samples/reexport-external-namespace/main.js diff --git a/test/form/samples/reexports-name-from-external/_expected/amd.js b/test/form/samples/reexports-name-from-external/_expected/amd.js deleted file mode 100644 index 4642bbad96c..00000000000 --- a/test/form/samples/reexports-name-from-external/_expected/amd.js +++ /dev/null @@ -1,14 +0,0 @@ -define(['exports', 'external'], function (exports, external) { 'use strict'; - - - - Object.defineProperty(exports, 'foo', { - enumerable: true, - get: function () { - return external.foo; - } - }); - - Object.defineProperty(exports, '__esModule', { value: true }); - -}); diff --git a/test/form/samples/reexports-name-from-external/_expected/cjs.js b/test/form/samples/reexports-name-from-external/_expected/cjs.js deleted file mode 100644 index 0fd0876a028..00000000000 --- a/test/form/samples/reexports-name-from-external/_expected/cjs.js +++ /dev/null @@ -1,14 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, '__esModule', { value: true }); - -var external = require('external'); - - - -Object.defineProperty(exports, 'foo', { - enumerable: true, - get: function () { - return external.foo; - } -}); diff --git a/test/form/samples/reexports-name-from-external/_expected/es.js b/test/form/samples/reexports-name-from-external/_expected/es.js deleted file mode 100644 index 397e2e7780c..00000000000 --- a/test/form/samples/reexports-name-from-external/_expected/es.js +++ /dev/null @@ -1 +0,0 @@ -export { foo } from 'external'; diff --git a/test/form/samples/reexports-name-from-external/_expected/iife.js b/test/form/samples/reexports-name-from-external/_expected/iife.js deleted file mode 100644 index db9c835d04d..00000000000 --- a/test/form/samples/reexports-name-from-external/_expected/iife.js +++ /dev/null @@ -1,15 +0,0 @@ -var myBundle = (function (exports, external) { - 'use strict'; - - - - Object.defineProperty(exports, 'foo', { - enumerable: true, - get: function () { - return external.foo; - } - }); - - return exports; - -}({}, external)); diff --git a/test/form/samples/reexports-name-from-external/main.js b/test/form/samples/reexports-name-from-external/main.js deleted file mode 100644 index 8986665d702..00000000000 --- a/test/form/samples/reexports-name-from-external/main.js +++ /dev/null @@ -1 +0,0 @@ -export { foo } from 'external'; \ No newline at end of file diff --git a/test/hooks/index.js b/test/hooks/index.js index 1ecff4f0602..2e4d800ca83 100644 --- a/test/hooks/index.js +++ b/test/hooks/index.js @@ -268,9 +268,9 @@ describe('hooks', () => { .then(({ output }) => { assert.equal( output[0].code, - `var input = new URL('chunk-01406d83.js', import.meta.url).href;\n\nexport default input;\n` + `var input = new URL('chunk-928cb70b.js', import.meta.url).href;\n\nexport default input;\n` ); - assert.equal(output[1].fileName, 'chunk-01406d83.js'); + assert.equal(output[1].fileName, 'chunk-928cb70b.js'); assert.equal(output[1].code, `console.log('chunk');\n`); return rollup.rollup({ @@ -293,9 +293,9 @@ describe('hooks', () => { .then(({ output }) => { assert.equal( output[0].code, - `var input = new URL('chunk-01406d83.js', import.meta.url).href;\n\nexport default input;\n` + `var input = new URL('chunk-928cb70b.js', import.meta.url).href;\n\nexport default input;\n` ); - assert.equal(output[1].fileName, 'chunk-01406d83.js'); + assert.equal(output[1].fileName, 'chunk-928cb70b.js'); assert.equal(output[1].code, `console.log('chunk');\n`); return rollup.rollup({ @@ -315,9 +315,9 @@ describe('hooks', () => { .then(({ output }) => { assert.equal( output[0].code, - `var input = new URL('chunk-01406d83.js', import.meta.url).href;\n\nexport default input;\n` + `var input = new URL('chunk-928cb70b.js', import.meta.url).href;\n\nexport default input;\n` ); - assert.equal(output[1].fileName, 'chunk-01406d83.js'); + assert.equal(output[1].fileName, 'chunk-928cb70b.js'); assert.equal(output[1].code, `console.log('chunk');\n`); }); }); @@ -1242,9 +1242,9 @@ describe('hooks', () => { .then(({ output }) => { assert.equal( output[0].code, - `var input = new URL('chunk-01406d83.js', import.meta.url).href;\n\nexport default input;\n` + `var input = new URL('chunk-928cb70b.js', import.meta.url).href;\n\nexport default input;\n` ); - assert.equal(output[1].fileName, 'chunk-01406d83.js'); + assert.equal(output[1].fileName, 'chunk-928cb70b.js'); assert.equal(output[1].code, `console.log('chunk');\n`); return rollup.rollup({ @@ -1267,9 +1267,9 @@ describe('hooks', () => { .then(({ output }) => { assert.equal( output[0].code, - `var input = new URL('chunk-01406d83.js', import.meta.url).href;\n\nexport default input;\n` + `var input = new URL('chunk-928cb70b.js', import.meta.url).href;\n\nexport default input;\n` ); - assert.equal(output[1].fileName, 'chunk-01406d83.js'); + assert.equal(output[1].fileName, 'chunk-928cb70b.js'); assert.equal(output[1].code, `console.log('chunk');\n`); return rollup.rollup({ @@ -1289,9 +1289,9 @@ describe('hooks', () => { .then(({ output }) => { assert.equal( output[0].code, - `var input = new URL('chunk-01406d83.js', import.meta.url).href;\n\nexport default input;\n` + `var input = new URL('chunk-928cb70b.js', import.meta.url).href;\n\nexport default input;\n` ); - assert.equal(output[1].fileName, 'chunk-01406d83.js'); + assert.equal(output[1].fileName, 'chunk-928cb70b.js'); assert.equal(output[1].code, `console.log('chunk');\n`); }); }); diff --git a/test/misc/bundle-information.js b/test/misc/bundle-information.js index cc0e6aa8bde..eb1a13f8e21 100644 --- a/test/misc/bundle-information.js +++ b/test/misc/bundle-information.js @@ -26,14 +26,14 @@ describe('The bundle object', () => { .then(({ output }) => { assert.deepEqual( output.map(chunk => chunk.fileName), - ['input1-91cf8b5e.js', 'input2-28e1210a.js', 'generated-shared-e9283962.js'], + ['input1-3810e839.js', 'input2-14354d1f.js', 'generated-shared-f6027271.js'], 'fileName' ); assert.deepEqual( output.map(chunk => chunk.code), [ - `import './generated-shared-e9283962.js';\n\nconsole.log("input1");const out = true;\n\nexport { out };\n`, - `import './generated-shared-e9283962.js';\n\nconsole.log("input2");var input2 = 42;\n\nexport default input2;\n`, + `import './generated-shared-f6027271.js';\n\nconsole.log("input1");const out = true;\n\nexport { out };\n`, + `import './generated-shared-f6027271.js';\n\nconsole.log("input2");var input2 = 42;\n\nexport default input2;\n`, 'console.log("shared");\n' ], 'code' @@ -48,7 +48,7 @@ describe('The bundle object', () => { ); assert.deepEqual( output.map(chunk => chunk.imports), - [['generated-shared-e9283962.js'], ['generated-shared-e9283962.js'], []], + [['generated-shared-f6027271.js'], ['generated-shared-f6027271.js'], []], 'imports' ); assert.deepEqual(output.map(chunk => chunk.dynamicImports), [[], [], []], 'dynamicImports'); diff --git a/test/misc/misc.js b/test/misc/misc.js index 2cd6bf0878a..f2e6a32a8b3 100644 --- a/test/misc/misc.js +++ b/test/misc/misc.js @@ -112,8 +112,8 @@ describe('misc', () => { assert.deepEqual(output.map(({ fileName }) => fileName), [ 'main1.js', 'main2.js', - 'dep-9d1272f4.js', - 'dyndep-80285050.js' + 'dep-f8bec8a7.js', + 'dyndep-b0a9ee12.js' ]); }); });