Sha256: 1c5b1f8a51fcab530ee73cda61fe332ca4891554c7d9f6955f3501e38b278099

Contents?: true

Size: 1.99 KB

Versions: 1

Compression:

Stored size: 1.99 KB

Contents

# -*- encoding : utf-8 -*-
require 'spec_helper.rb'

describe OpenPayU::Configuration do

  context 'load from YAML' do
    before(:all) do
      ENV['RACK_ENV'] = 'test'
      OpenPayU::Configuration.configure 'spec/openpayu.yml'
    end

    it { OpenPayU::Configuration.valid?.should be_true }
    it { OpenPayU::Configuration.merchant_pos_id.should eq '145227' }
    it { OpenPayU::Configuration.env.should eq 'secure' }
    it { OpenPayU::Configuration.service_domain.should eq 'payu.com' }

  end

  context 'valid configuration' do
    before(:all) do
      OpenPayU::Configuration.configure do |config|
        config.env              = 'sandbox'
        config.signature_key    = 'fsd8931231232e4aeb53'
        config.service_domain   = 'payu.pl'
      end
    end

    it { OpenPayU::Configuration.valid?.should be_true }
    it { OpenPayU::Configuration.env.should eq 'sandbox' }
    it { OpenPayU::Configuration.service_domain.should eq 'payu.pl' }

    it 'should override default' do
      OpenPayU::Configuration.env.should eq 'sandbox'
    end

    it 'should set default value' do
      OpenPayU::Configuration.country.should eq 'pl'
    end

    context 'change configuration to be invalid' do
      before { OpenPayU::Configuration.merchant_pos_id = '' }

      it 'should raise exception' do
        expect { OpenPayU::Configuration.valid? }.to(
          raise_error(
            WrongConfigurationError,
            'Parameter merchant_pos_id is invalid.'
          )
        )
      end
    end
  end

  context 'Invalid configuration' do
    it 'should raise exeption when tried to set invalid configuration' do
      expect do
        OpenPayU::Configuration.configure do |config|
          config.env              = 'sandbox'
          config.signature_key    = 'fsd8931231232e4aeb53'
          config.service_domain   = 'payu.pl'
        end.to(
          raise_error(
            WrongConfigurationError,
            'Parameter merchant_pos_id is invalid.'
          )
        )
      end
    end
  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
openpayu-0.1.2 spec/unit/configuration_spec.rb