From 2b9ef7fe195152adc0e7efae2e0623fa1e755f6c Mon Sep 17 00:00:00 2001 From: Addison Beck Date: Tue, 25 Mar 2025 19:11:26 -0400 Subject: [PATCH] fix: use newly-minted policy methods in metadata provider (#13993) Recently the policy service was refactored and some method signatures were changed. One of these changes involved renaming the `getAll` observable to `policiesByType`. This was not merged into the metadata provider work before it was merged, so those changes were committed using removed method signatures. This commit updates these references. --- .../services/generator-metadata-provider.spec.ts | 14 +++++++------- .../src/services/generator-metadata-provider.ts | 14 ++++++++------ 2 files changed, 15 insertions(+), 13 deletions(-) diff --git a/libs/tools/generator/core/src/services/generator-metadata-provider.spec.ts b/libs/tools/generator/core/src/services/generator-metadata-provider.spec.ts index 958e5608449..37a987f88bc 100644 --- a/libs/tools/generator/core/src/services/generator-metadata-provider.spec.ts +++ b/libs/tools/generator/core/src/services/generator-metadata-provider.spec.ts @@ -295,7 +295,7 @@ describe("GeneratorMetadataProvider", () => { [Algorithm.username, effWordList], [Algorithm.password, password], ])("gets a specific algorithm", async (algorithm, metadata) => { - SomePolicyService.getAll$.mockReturnValue(new BehaviorSubject([])); + SomePolicyService.policiesByType$.mockReturnValue(new BehaviorSubject([])); const provider = new GeneratorMetadataProvider(SystemProvider, ApplicationProvider, [ metadata, ]); @@ -311,7 +311,7 @@ describe("GeneratorMetadataProvider", () => { [Type.username, [effWordList]], [Type.password, [password, passphrase]], ])("gets a category of algorithms", async (category, metadata) => { - SomePolicyService.getAll$.mockReturnValue(new BehaviorSubject([])); + SomePolicyService.policiesByType$.mockReturnValue(new BehaviorSubject([])); const provider = new GeneratorMetadataProvider(SystemProvider, ApplicationProvider, metadata); const result = new ReplaySubject(1); @@ -329,7 +329,7 @@ describe("GeneratorMetadataProvider", () => { overridePasswordType: Algorithm.password, }, } as any); - SomePolicyService.getAll$.mockReturnValue(new BehaviorSubject([policy])); + SomePolicyService.policiesByType$.mockReturnValue(new BehaviorSubject([policy])); const metadata = [password, passphrase]; const provider = new GeneratorMetadataProvider(SystemProvider, ApplicationProvider, metadata); const algorithmResult = new ReplaySubject(1); @@ -347,7 +347,7 @@ describe("GeneratorMetadataProvider", () => { }); it("omits algorithms whose metadata is unavailable", async () => { - SomePolicyService.getAll$.mockReturnValue(new BehaviorSubject([])); + SomePolicyService.policiesByType$.mockReturnValue(new BehaviorSubject([])); const provider = new GeneratorMetadataProvider(SystemProvider, ApplicationProvider, [ password, ]); @@ -389,7 +389,7 @@ describe("GeneratorMetadataProvider", () => { [Type.username, effWordList], [Type.password, password], ])("emits the user's %s preference", async (type, metadata) => { - SomePolicyService.getAll$.mockReturnValue(new BehaviorSubject([])); + SomePolicyService.policiesByType$.mockReturnValue(new BehaviorSubject([])); const provider = new GeneratorMetadataProvider(SystemProvider, ApplicationProvider, [ metadata, ]); @@ -401,7 +401,7 @@ describe("GeneratorMetadataProvider", () => { }); it("emits a default when the user's preference is unavailable", async () => { - SomePolicyService.getAll$.mockReturnValue(new BehaviorSubject([])); + SomePolicyService.policiesByType$.mockReturnValue(new BehaviorSubject([])); const provider = new GeneratorMetadataProvider(SystemProvider, ApplicationProvider, [ plusAddress, ]); @@ -416,7 +416,7 @@ describe("GeneratorMetadataProvider", () => { }); it("emits undefined when the user's preference is unavailable and there is no metadata", async () => { - SomePolicyService.getAll$.mockReturnValue(new BehaviorSubject([])); + SomePolicyService.policiesByType$.mockReturnValue(new BehaviorSubject([])); const provider = new GeneratorMetadataProvider(SystemProvider, ApplicationProvider, []); const result = new ReplaySubject(1); diff --git a/libs/tools/generator/core/src/services/generator-metadata-provider.ts b/libs/tools/generator/core/src/services/generator-metadata-provider.ts index f8c07283f5a..161f7192c39 100644 --- a/libs/tools/generator/core/src/services/generator-metadata-provider.ts +++ b/libs/tools/generator/core/src/services/generator-metadata-provider.ts @@ -145,12 +145,14 @@ export class GeneratorMetadataProvider { const available$ = id$.pipe( switchMap((id) => { - const policies$ = this.application.policy.getAll$(PolicyType.PasswordGenerator, id).pipe( - map((p) => availableAlgorithms_vNext(p).filter((a) => this._metadata.has(a))), - map((p) => new Set(p)), - // complete policy emissions otherwise `switchMap` holds `available$` open indefinitely - takeUntil(anyComplete(id$)), - ); + const policies$ = this.application.policy + .policiesByType$(PolicyType.PasswordGenerator, id) + .pipe( + map((p) => availableAlgorithms_vNext(p).filter((a) => this._metadata.has(a))), + map((p) => new Set(p)), + // complete policy emissions otherwise `switchMap` holds `available$` open indefinitely + takeUntil(anyComplete(id$)), + ); return policies$; }), map(