You can usually just use the eq matched to compare two numbers:
expect(deal.total).to eq(120)
If the actual value is a BigDecimal, you might have issues when you match it against a Float:
expect(deal.total_price).to eq(1200.99)
In these cases, try matching it against another BigDecimal:
expect(deal.total_price).to eq BigDecimal(1200.99)
If you don't like the syntax, our
rspec_candy
Show archive.org snapshot
gem has a matcher that will compare Fixnums (integers), Floats and BigDecimals with each other:
expect(deal.total_price).to be_same_number_as(1200.99)
This compares the numbers' #to_s representation.
Posted by Henning Koch to makandra dev (2010-12-13 22:33)