mirror of https://github.com/webpack/webpack.git
46 lines
790 B
JavaScript
46 lines
790 B
JavaScript
"use strict";
|
|
|
|
const path = require("path");
|
|
|
|
let getCounter = 0;
|
|
let setConter = 0;
|
|
|
|
const unsafeCache = new Proxy(
|
|
{},
|
|
{
|
|
get(target, key, receiver) {
|
|
getCounter += 1;
|
|
|
|
return Reflect.get(target, key, receiver);
|
|
},
|
|
set(target, key, value, receiver) {
|
|
setConter += 1;
|
|
|
|
return Reflect.set(target, key, value, receiver);
|
|
}
|
|
}
|
|
);
|
|
|
|
/** @type {import("../../../../").Configuration} */
|
|
module.exports = {
|
|
plugins: [
|
|
{
|
|
apply(compiler) {
|
|
compiler.hooks.done.tap("TestPlugin", () => {
|
|
if (getCounter === 0 || setConter === 0) {
|
|
throw new Error(
|
|
"resolve.unsafeCache doesn't work with the `Proxy`"
|
|
);
|
|
}
|
|
});
|
|
}
|
|
}
|
|
],
|
|
resolve: {
|
|
alias: {
|
|
_: [path.resolve(__dirname, "a"), path.resolve(__dirname, "b")]
|
|
},
|
|
unsafeCache
|
|
}
|
|
};
|