From 72549952d1ee43344a9da44b9be94050cebc3037 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Mon, 26 Sep 2022 16:18:05 +0200 Subject: [PATCH] backend-test-utils: fix handling of root scoped services MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Fredrik Adelöw Co-authored-by: Johan Haals Signed-off-by: Patrik Oldsberg --- .changeset/curvy-lemons-change.md | 5 +++++ .../src/next/wiring/TestBackend.ts | 12 ++++++++++-- 2 files changed, 15 insertions(+), 2 deletions(-) create mode 100644 .changeset/curvy-lemons-change.md diff --git a/.changeset/curvy-lemons-change.md b/.changeset/curvy-lemons-change.md new file mode 100644 index 0000000000..29e31a7b60 --- /dev/null +++ b/.changeset/curvy-lemons-change.md @@ -0,0 +1,5 @@ +--- +'@backstage/backend-test-utils': patch +--- + +Fixed handling of root scoped services in `startTestBackend`. diff --git a/packages/backend-test-utils/src/next/wiring/TestBackend.ts b/packages/backend-test-utils/src/next/wiring/TestBackend.ts index f93b34cdd8..677ba930cc 100644 --- a/packages/backend-test-utils/src/next/wiring/TestBackend.ts +++ b/packages/backend-test-utils/src/next/wiring/TestBackend.ts @@ -63,10 +63,18 @@ export async function startTestBackend< if (Array.isArray(serviceDef)) { // if type is ExtensionPoint? // do something differently? + const [ref, impl] = serviceDef; + if (ref.scope === 'plugin') { + return createServiceFactory({ + service: ref, + deps: {}, + factory: async () => async () => impl, + }); + } return createServiceFactory({ - service: serviceDef[0], + service: ref, deps: {}, - factory: async () => async () => serviceDef[1], + factory: async () => impl, }); } return serviceDef as ServiceFactory;