fix: cashu token amount parsing from proof values
This commit is contained in:
@@ -265,6 +265,16 @@ describe('CashuUtils', () => {
|
||||
).toBe(7);
|
||||
});
|
||||
|
||||
it('sums string proof amounts as numbers', () => {
|
||||
expect(
|
||||
CashuUtils.sumProofsValue([
|
||||
{ amount: '64' },
|
||||
{ amount: '32' },
|
||||
{ amount: '4' }
|
||||
])
|
||||
).toBe(100);
|
||||
});
|
||||
|
||||
it('returns 0 for empty/null', () => {
|
||||
expect(CashuUtils.sumProofsValue([])).toBe(0);
|
||||
expect(CashuUtils.sumProofsValue(null)).toBe(0);
|
||||
|
||||
+2
-1
@@ -139,7 +139,8 @@ class CashuUtils {
|
||||
return 0;
|
||||
}
|
||||
return proofs.reduce((r: number, c: any) => {
|
||||
return r + c.amount;
|
||||
const amount = Number(c?.amount) || 0;
|
||||
return r + amount;
|
||||
}, 0);
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user