From 32cc054e9a639baa90bc5fd396ea3205b501e5af Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Mon, 28 Jul 2025 22:25:42 +0200 Subject: [PATCH] frontend-plugin-api: add test for params transforms Signed-off-by: Patrik Oldsberg --- .../wiring/createExtensionBlueprint.test.tsx | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/packages/frontend-plugin-api/src/wiring/createExtensionBlueprint.test.tsx b/packages/frontend-plugin-api/src/wiring/createExtensionBlueprint.test.tsx index faec493092..f13741a088 100644 --- a/packages/frontend-plugin-api/src/wiring/createExtensionBlueprint.test.tsx +++ b/packages/frontend-plugin-api/src/wiring/createExtensionBlueprint.test.tsx @@ -1541,5 +1541,44 @@ describe('createExtensionBlueprint', () => { expect(createExtensionTester(override).get(testDataRef)).toBe('z z'); }); + + it('should allow the params definer to transform the params', () => { + const TestTransformExtensionBlueprint = createExtensionBlueprint({ + kind: 'test-extension', + attachTo: { id: 'test', input: 'default' }, + output: [testDataRef], + defineParams(params: { a: number; b: number }) { + return createExtensionBlueprintParams({ + x: params.a + 1, + y: params.b + 1, + }); + }, + factory(params) { + return [testDataRef(`${params.x} ${params.y}`)]; + }, + }); + + const extension = TestTransformExtensionBlueprint.make({ + params: define => + define({ + a: 0, + b: 10, + }), + }); + + expect(createExtensionTester(extension).get(testDataRef)).toBe(`1 11`); + + expect( + createExtensionTester( + extension.override({ + params: define => + define({ + a: 20, + b: 30, + }), + }), + ).get(testDataRef), + ).toBe(`21 31`); + }); }); });