Hello everyone !
The following test fails:
def test_substract_from_zero
assert_equal -12.to_money, Money.empty - (12.to_money)
end
This is equivalent to the normal arithmetic expression: 0 - 12 == -12.
The error is caused by the first line of Money#-(other_money)
def -(other_money)
return other_money.dup if cents.zero?
…
end
“return other_money.dup if cents.zero?” should be removed to pass the
test case.
This is also on my blog.
Hope that helps someone !