# coding: utf-8 require 'helper' require 'big_money/exchange' class TestEx < BigMoney::Exchange def self.read_rate(from, to) BigDecimal.new('2') end def self.currencies BigMoney::Currency.all end end class TestExchange < Test::Unit::TestCase context BigMoney::Exchange do setup do @aud = BigMoney.currency(:aud) @usd = BigMoney.currency(:usd) end should 'return rate' do bd = BigDecimal.new('2') assert_equal bd, BigMoney::Exchange.rate(@aud, @usd) assert_equal bd, BigMoney::Exchange.rate(:aud, :usd) assert_raise(ArgumentError) do BigMoney::Exchange.rate(:aud, :fud) end end should 'return equal rate' do assert_equal BigDecimal.new('1'), BigMoney::Exchange.rate(:usd, :usd) end end end