[core/api] store single instance of UserFlags

This commit is contained in:
Bilawal Hameed
2020-03-30 11:11:57 +02:00
parent d2d8238330
commit 0ff31e486d
2 changed files with 6 additions and 1 deletions
@@ -43,6 +43,7 @@ describe('FeatureFlags', () => {
}),
);
featureFlags = new FeatureFlagsImpl();
expect(featureFlags.getFlags().toObject()).toMatchObject({
'feature-flag-one': FeatureFlagState.Enabled,
'feature-flag-two': FeatureFlagState.Enabled,
@@ -59,6 +60,8 @@ describe('FeatureFlags', () => {
}),
);
featureFlags = new FeatureFlagsImpl();
expect(featureFlags.getFlags().get('feature-flag-one')).toEqual(
FeatureFlagState.Enabled,
);
@@ -89,6 +92,7 @@ describe('FeatureFlags', () => {
}),
);
featureFlags = new FeatureFlagsImpl();
const flags = featureFlags.getFlags();
flags.delete('feature-flag-one');
+2 -1
View File
@@ -168,9 +168,10 @@ export class FeatureFlagsRegistry extends Array<FeatureFlagsRegistryItem> {
*/
export class FeatureFlags implements FeatureFlagsApi {
public registeredFeatureFlags: FeatureFlagsRegistryItem[] = [];
private readonly userFlags: UserFlags = new UserFlags();
getFlags(): UserFlags {
return new UserFlags();
return this.userFlags;
}
getRegisteredFlags(): FeatureFlagsRegistry {