Spaces:
Build error
Build error
| import { sumByProperty } from '@/utils/array/sumByProperty'; | |
| describe('sumByProperty', () => { | |
| it('should sum numeric property values', () => { | |
| const items = [ | |
| { id: '1', amount: 10 }, | |
| { id: '2', amount: 20 }, | |
| { id: '3', amount: 30 }, | |
| ]; | |
| expect(items.reduce(sumByProperty('amount'), 0)).toBe(60); | |
| }); | |
| it('should skip non-numeric values', () => { | |
| const items = [ | |
| { id: '1', amount: 10 }, | |
| { id: '2', amount: 'not-a-number' as unknown as number }, | |
| { id: '3', amount: 30 }, | |
| ]; | |
| expect(items.reduce(sumByProperty('amount'), 0)).toBe(40); | |
| }); | |
| it('should handle an empty array', () => { | |
| const items: { id: string; amount: number }[] = []; | |
| expect(items.reduce(sumByProperty('amount'), 0)).toBe(0); | |
| }); | |
| }); | |