diff --git a/packages/shared/src/stores/createProfileWalletStore.test.ts b/packages/shared/src/stores/createProfileWalletStore.test.ts index 92399e2cf..39502b4a9 100644 --- a/packages/shared/src/stores/createProfileWalletStore.test.ts +++ b/packages/shared/src/stores/createProfileWalletStore.test.ts @@ -182,4 +182,20 @@ describe('createProfileWalletStore', () => { expect(store.getState().mudPointBalance).toBeNull(); expect(store.getState().mudPointBalanceStatus).toBe('idle'); }); + + test('normalizes a snapshot owner before matching it', () => { + const store = createProfileWalletStore({ + getRechargeCenter: vi.fn(), + }); + store.getState().setWalletOwner('user-a'); + + store + .getState() + .applyWalletBalanceSnapshot(' user-a ', balance(100)); + + expect(store.getState()).toMatchObject({ + mudPointBalance: balance(100), + mudPointBalanceStatus: 'ready', + }); + }); }); diff --git a/packages/shared/src/stores/createProfileWalletStore.ts b/packages/shared/src/stores/createProfileWalletStore.ts index 02497b042..527c5ff08 100644 --- a/packages/shared/src/stores/createProfileWalletStore.ts +++ b/packages/shared/src/stores/createProfileWalletStore.ts @@ -64,7 +64,11 @@ export function createProfileWalletStore( }); }, applyWalletBalanceSnapshot: (ownerUserId, balance) => { - if (!ownerUserId || get().ownerUserId !== ownerUserId) { + const normalizedOwnerUserId = ownerUserId.trim(); + if ( + !normalizedOwnerUserId || + get().ownerUserId !== normalizedOwnerUserId + ) { return; }