Sha256: 404e000544b12f8e2ad6438b237b128eb53fc66c69be8150e36c0d3614b47fa4

Contents?: true

Size: 832 Bytes

Versions: 2

Compression:

Stored size: 832 Bytes

Contents

require 'spec_helper'

describe CurrencyConverter::XE do
  let(:currency_converter) { described_class.new }

  context '#exchange' do
    it 'returns the correct rate' do
      expect(currency_converter.exchange('USD', 'USD', 1)).to eq 1
    end
  end

  context '#validate_currency' do
    context 'CurrencyConverter::UnknownCurrency' do
      it 'raise an error on an unsupported currency code' do
        expect { currency_converter.exchange('EUR', 'UNKNOWN', 100) }.to raise_error(CurrencyConverter::UnknownCurrency)
        expect { currency_converter.exchange('UNKNOWN', 'EUR', 100) }.to raise_error(CurrencyConverter::UnknownCurrency)
      end

      it 'doesn\'t raise an error for supported currency codes' do
        expect { currency_converter.exchange('EUR', 'USD', 100) }.to_not raise_error
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
currency_converter-1.1.4 spec/currency_converter/xe_spec.rb
currency_converter-1.1.3 spec/currency_converter/xe_spec.rb