From c6ba0a1f78ff90d7f53b1e1153c1fc591b7ace06 Mon Sep 17 00:00:00 2001 From: Sebastian Malton Date: Wed, 31 Mar 2021 12:01:26 -0400 Subject: [PATCH] Fix StorageHelper.get() returning null after clearing - Return the defaultValue - Mark default value as required Signed-off-by: Sebastian Malton --- src/renderer/utils/__tests__/storageHelper.test.ts | 2 +- src/renderer/utils/storageHelper.ts | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/renderer/utils/__tests__/storageHelper.test.ts b/src/renderer/utils/__tests__/storageHelper.test.ts index 8e13543ccd..f99893d03a 100644 --- a/src/renderer/utils/__tests__/storageHelper.test.ts +++ b/src/renderer/utils/__tests__/storageHelper.test.ts @@ -148,7 +148,7 @@ describe("renderer/utils/StorageHelper", () => { expect(storageHelper.get()).toBeTruthy(); storageHelper.clear(); - expect(storageHelper.get()).toBeFalsy(); + expect((storageHelper as any).data.get()).toBeFalsy(); expect(storageMock[storageKey]).toBeUndefined(); expect(storageAdapter.removeItem).toHaveBeenCalledWith(storageHelper.key); }); diff --git a/src/renderer/utils/storageHelper.ts b/src/renderer/utils/storageHelper.ts index f6e6a3d5f9..f7db532ec2 100755 --- a/src/renderer/utils/storageHelper.ts +++ b/src/renderer/utils/storageHelper.ts @@ -21,7 +21,7 @@ export interface StorageHelperOptions { autoInit?: boolean; // start preloading data immediately, default: true observable?: CreateObservableOptions; storage: StorageAdapter; - defaultValue?: T; + defaultValue: T; } export class StorageHelper { @@ -129,7 +129,7 @@ export class StorageHelper { } get(): T { - return this.data.get(); + return this.data.get() ?? this.defaultValue; } set(value: T) {