From 56d01c7a7d254c6898446e1fa97616b16061e11f Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Fri, 27 Feb 2026 20:22:28 +0100 Subject: [PATCH] test-utils: add `const` type parameter modifier to TestApiProvider and TestApiRegistry.from Signed-off-by: Patrik Oldsberg --- .changeset/fix-test-api-provider-const.md | 5 +++++ packages/test-utils/report.api.md | 4 ++-- packages/test-utils/src/testUtils/TestApiProvider.tsx | 4 ++-- 3 files changed, 9 insertions(+), 4 deletions(-) create mode 100644 .changeset/fix-test-api-provider-const.md diff --git a/.changeset/fix-test-api-provider-const.md b/.changeset/fix-test-api-provider-const.md new file mode 100644 index 0000000000..b2bc0f49cd --- /dev/null +++ b/.changeset/fix-test-api-provider-const.md @@ -0,0 +1,5 @@ +--- +'@backstage/test-utils': patch +--- + +Added `const` type parameter modifier to `TestApiProvider` and `TestApiRegistry.from` for improved type inference of API pairs. diff --git a/packages/test-utils/report.api.md b/packages/test-utils/report.api.md index b3cf84b5ae..f830cde655 100644 --- a/packages/test-utils/report.api.md +++ b/packages/test-utils/report.api.md @@ -340,7 +340,7 @@ export function setupRequestMockHandlers(worker: { export type SyncLogCollector = () => void; // @public -export const TestApiProvider: ( +export const TestApiProvider: ( props: TestApiProviderProps, ) => JSX_2.Element; @@ -352,7 +352,7 @@ export type TestApiProviderProps = { // @public export class TestApiRegistry implements ApiHolder { - static from( + static from( ...apis: readonly [...TestApiProviderPropsApiPairs] ): TestApiRegistry; get(api: ApiRef): T | undefined; diff --git a/packages/test-utils/src/testUtils/TestApiProvider.tsx b/packages/test-utils/src/testUtils/TestApiProvider.tsx index 18a7174201..63e8a56f3b 100644 --- a/packages/test-utils/src/testUtils/TestApiProvider.tsx +++ b/packages/test-utils/src/testUtils/TestApiProvider.tsx @@ -63,7 +63,7 @@ export class TestApiRegistry implements ApiHolder { * @public * @param apis - A list of pairs mapping an ApiRef to its respective implementation. */ - static from( + static from( ...apis: readonly [...TestApiProviderPropsApiPairs] ) { return new TestApiRegistry( @@ -124,7 +124,7 @@ export class TestApiRegistry implements ApiHolder { * * @public */ -export const TestApiProvider = ( +export const TestApiProvider = ( props: TestApiProviderProps, ) => { return (