Skip to content

Commit ab79c2f

Browse files
committed
fix: 🐛 clarify error message in add()
1 parent bb78df8 commit ab79c2f

File tree

2 files changed

+5
-2
lines changed

2 files changed

+5
-2
lines changed

src/math/add.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,10 @@ function add(...measurements) {
1616
return measurements[0];
1717
}
1818
if (!measurementsHaveSameUnit(measurements)) {
19-
throw new TypeError('Cannot add measurements with different units');
19+
const units = Array.from(new Set(measurements.map(m => m.unit.name)));
20+
throw new TypeError(
21+
`Cannot add measurements with different units: ${units.join(', ')}`
22+
);
2023
}
2124
const unit = measurements[0].unit;
2225
return new Measurement(_add(measurements), unit);

src/math/add.test.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ describe(add, () => {
2626
new Measurement(1, foot),
2727
];
2828
expect(() => add(...measurements)).toThrowError(
29-
new TypeError('Cannot add measurements with different units')
29+
new TypeError('Cannot add measurements with different units: inch, foot')
3030
);
3131
});
3232

0 commit comments

Comments
 (0)