diff --git a/make-lots-of-symlinks.js b/make-lots-of-symlinks.js new file mode 100644 index 00000000..c171a839 --- /dev/null +++ b/make-lots-of-symlinks.js @@ -0,0 +1,27 @@ +const fs = require('fs'); +const path = require('path'); + +/** + * @param {number} n + */ +function* range(n) { + for (let i = 0; i < n; i++) { + yield i; + } +} + +const base = 'dist/node_modules'; + +fs.mkdirSync(base, { recursive: true }); + +for (const i of range(100)) { + fs.mkdirSync(`${base}/repro${i}/node_modules`, { recursive: true }); + for (const j of range(i)) { + const target = `repro${j}`; + const directory = `${base}/repro${i}/node_modules`; + fs.symlinkSync( + path.relative(directory, `${base}/${target}`), + `${directory}/${target}` + ); + } +}