Sha256: e362f1c0e70c9e667ff64ae2d99d0eae5d76f5b3c24238e0682308adf320ddc3

Contents?: true

Size: 486 Bytes

Versions: 2

Compression:

Stored size: 486 Bytes

Contents

module Coinage
  module Exchange
    module Base
      
      def rate(current, target)
        validate_currencies(current, target)
      end
      
      def supported_currencies
        [:usd, :aud, :sgd]
      end
      
      def validate_currency(*currencies)
        currencies.each do |currency|
          raise ArgumentError unless supported_currencies.include?(currency)
        end
      end
      
      alias :validate_currencies :validate_currency
      
    end
  end
end

Version data entries

2 entries across 2 versions & 2 rubygems

Version Path
chrislloyd-coinage-0.2.0 lib/coinage/exchange/base.rb
coinage-0.2.0 lib/coinage/exchange/base.rb