Sha256: bf547b0ee8ae54712ba2ddd9e5dd83d5d07076a6e85f355daf8dd97e787cead1

Contents?: true

Size: 894 Bytes

Versions: 2

Compression:

Stored size: 894 Bytes

Contents

# frozen_string_literal: true

RSpec.configure do |config|
  def described_class_source_location
    described_class.instance_methods(false).map do |method|
      described_class.instance_method(method).source_location.first
    end.uniq.first
  end

  config.before(:each, use_solidus_api: true) do
    SolidusAfterpay.configure do |c|
      c.use_solidus_api = true
    end

    class_name = described_class.to_s.split('::').last
    source_location = described_class_source_location

    SolidusAfterpay.send(:remove_const, class_name)
    load source_location
  end

  config.after(:each, use_solidus_api: true) do
    SolidusAfterpay.configure do |c|
      c.use_solidus_api = false
    end

    class_name = described_class.to_s.split('::').last
    source_location = described_class_source_location

    SolidusAfterpay.send(:remove_const, class_name)
    load source_location
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
solidus_afterpay-0.2.0 spec/support/preferences.rb
solidus_afterpay-0.1.0 spec/support/preferences.rb