Skip to content

Commit

Permalink
Add new test for virtual file output when modifying entryFileNames
Browse files Browse the repository at this point in the history
Use entryFileNames to change the extension of the filename to be mjs,
and see that the file created from the virtual file chunk has a .mjs
extension

Note that the amd definition contains the .mjs extension, as amd ids only
strip the .js file extension, which is slightly odd but probably ok as
this amd is not the targetted usecase for this behaviour
  • Loading branch information
BPScott committed Nov 14, 2021
1 parent 260e107 commit 61e0d7d
Show file tree
Hide file tree
Showing 10 changed files with 80 additions and 0 deletions.
@@ -0,0 +1,23 @@
module.exports = {
description:
'Generates actual files whose filename adheres to entryFileNames for virtual modules when preserving modules',
options: {
input: 'main.js',
output: { preserveModules: true, entryFileNames: '[name][assetExtname].mjs' },
plugins: [
{
resolveId(id) {
if (id === '\0virtualModule') return id;
},
load(id) {
if (id !== '\0virtualModule') return null;
return 'export const virtual = "Virtual!";\n';
},
transform(code, id) {
if (id === '\0virtualModule') return null;
return 'import {virtual} from "\0virtualModule";\n' + code;
}
}
]
}
};
@@ -0,0 +1,9 @@
define(['exports'], (function (exports) { 'use strict';

const virtual = "Virtual!";

exports.virtual = virtual;

Object.defineProperty(exports, '__esModule', { value: true });

}));
@@ -0,0 +1,5 @@
define(['./_virtual/_virtualModule.mjs'], (function (_virtualModule) { 'use strict';

assert.equal(_virtualModule.virtual, 'Virtual!');

}));
@@ -0,0 +1,7 @@
'use strict';

Object.defineProperty(exports, '__esModule', { value: true });

const virtual = "Virtual!";

exports.virtual = virtual;
@@ -0,0 +1,5 @@
'use strict';

var _virtualModule = require('./_virtual/_virtualModule.mjs');

assert.equal(_virtualModule.virtual, 'Virtual!');
@@ -0,0 +1,3 @@
const virtual = "Virtual!";

export { virtual };
@@ -0,0 +1,3 @@
import { virtual } from './_virtual/_virtualModule.mjs';

assert.equal(virtual, 'Virtual!');
@@ -0,0 +1,10 @@
System.register([], (function (exports) {
'use strict';
return {
execute: (function () {

const virtual = exports('virtual', "Virtual!");

})
};
}));
@@ -0,0 +1,14 @@
System.register(['./_virtual/_virtualModule.mjs'], (function () {
'use strict';
var virtual;
return {
setters: [function (module) {
virtual = module.virtual;
}],
execute: (function () {

assert.equal(virtual, 'Virtual!');

})
};
}));
@@ -0,0 +1 @@
assert.equal(virtual, 'Virtual!');

0 comments on commit 61e0d7d

Please sign in to comment.