From 89c39010db4d7c66ebe12b031484e4e413e37680 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nacho=20Codo=C3=B1er?= Date: Tue, 19 Aug 2025 08:44:58 +0200 Subject: [PATCH] support full-app test mode --- .../meteor-rspack/entries/eager-app-tests.js | 9 ++ .../meteor-rspack/entries/eager-tests.js | 2 +- .../plugins/RspackMeteorHtmlPlugin.js | 6 +- npm-packages/meteor-rspack/rspack.config.js | 97 +++++++++++-------- 4 files changed, 72 insertions(+), 42 deletions(-) create mode 100644 npm-packages/meteor-rspack/entries/eager-app-tests.js diff --git a/npm-packages/meteor-rspack/entries/eager-app-tests.js b/npm-packages/meteor-rspack/entries/eager-app-tests.js new file mode 100644 index 0000000000..c95d1f965a --- /dev/null +++ b/npm-packages/meteor-rspack/entries/eager-app-tests.js @@ -0,0 +1,9 @@ +{ + const ctx = import.meta.webpackContext('/', { + recursive: true, + regExp: /\.app-?(?:test|spec)s?\.[^.]+$/, + exclude: /(^|\/)(node_modules|\.meteor|_build)(\/|$)/, + mode: 'eager', + }); + ctx.keys().forEach(ctx); +} diff --git a/npm-packages/meteor-rspack/entries/eager-tests.js b/npm-packages/meteor-rspack/entries/eager-tests.js index 6d27079b64..d5044e443b 100644 --- a/npm-packages/meteor-rspack/entries/eager-tests.js +++ b/npm-packages/meteor-rspack/entries/eager-tests.js @@ -1,7 +1,7 @@ { const ctx = import.meta.webpackContext('/', { recursive: true, - regExp: /\.(?:app-)?(?:test|spec)s?\.[^.]+$/, + regExp: /\.(?:test|spec)s?\.[^.]+$/, exclude: /(^|\/)(node_modules|\.meteor|_build)(\/|$)/, mode: 'eager', }); diff --git a/npm-packages/meteor-rspack/plugins/RspackMeteorHtmlPlugin.js b/npm-packages/meteor-rspack/plugins/RspackMeteorHtmlPlugin.js index 87d80c44fb..baa93a336f 100644 --- a/npm-packages/meteor-rspack/plugins/RspackMeteorHtmlPlugin.js +++ b/npm-packages/meteor-rspack/plugins/RspackMeteorHtmlPlugin.js @@ -13,7 +13,7 @@ export function loadHtmlRspackPluginFromHost(compiler) { /** * Rspack plugin to: - * 1. Remove the injected `client-rspack.js` script tag + * 1. Remove the injected `*-rspack.js` script tags * 2. Strip and … wrappers from the final HTML */ export default class RspackMeteorHtmlPlugin { @@ -26,11 +26,11 @@ export default class RspackMeteorHtmlPlugin { compiler.hooks.compilation.tap('RspackMeteorHtmlPlugin', compilation => { const hooks = HtmlRspackPlugin.getCompilationHooks(compilation); - // remove