From 221e1961bf4a0e6584534d92ec669e96f33fdbbd Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Fri, 11 Jul 2025 20:15:34 +0000 Subject: [PATCH] Changes from background composer bc-a96f1dda-405c-4450-8ed7-8c3a8987e2e2 --- packages/rsbuild-plugin/src/cli/index.test.ts | 29 +++++++++++++++++++ packages/rsbuild-plugin/src/cli/index.ts | 2 +- 2 files changed, 30 insertions(+), 1 deletion(-) create mode 100644 packages/rsbuild-plugin/src/cli/index.test.ts diff --git a/packages/rsbuild-plugin/src/cli/index.test.ts b/packages/rsbuild-plugin/src/cli/index.test.ts new file mode 100644 index 0000000000..3ec203cbc7 --- /dev/null +++ b/packages/rsbuild-plugin/src/cli/index.test.ts @@ -0,0 +1,29 @@ +import { pluginModuleFederation } from './index'; +import type { moduleFederationPlugin } from '@module-federation/sdk'; + +describe('pluginModuleFederation', () => { + const mockMFConfig: moduleFederationPlugin.ModuleFederationPluginOptions = { + name: 'test', + exposes: { + './Button': './src/Button', + }, + }; + + it('should work without rsbuildOptions parameter', () => { + const plugin = pluginModuleFederation(mockMFConfig); + expect(plugin).toBeDefined(); + expect(plugin.name).toBe('rsbuild:module-federation-enhanced'); + }); + + it('should work with rsbuildOptions parameter', () => { + const plugin = pluginModuleFederation(mockMFConfig, { ssr: true }); + expect(plugin).toBeDefined(); + expect(plugin.name).toBe('rsbuild:module-federation-enhanced'); + }); + + it('should work with empty rsbuildOptions', () => { + const plugin = pluginModuleFederation(mockMFConfig, {}); + expect(plugin).toBeDefined(); + expect(plugin.name).toBe('rsbuild:module-federation-enhanced'); + }); +}); diff --git a/packages/rsbuild-plugin/src/cli/index.ts b/packages/rsbuild-plugin/src/cli/index.ts index 71921b05a7..011ba0a4fb 100644 --- a/packages/rsbuild-plugin/src/cli/index.ts +++ b/packages/rsbuild-plugin/src/cli/index.ts @@ -98,7 +98,7 @@ const isRspressSSGConfig = (bundlerConfigName?: string) => { export const pluginModuleFederation = ( moduleFederationOptions: ModuleFederationOptions, - rsbuildOptions: RSBUILD_PLUGIN_OPTIONS, + rsbuildOptions?: RSBUILD_PLUGIN_OPTIONS, ): RsbuildPlugin => ({ name: RSBUILD_PLUGIN_MODULE_FEDERATION_NAME, setup: (api) => {