Sha256: a408f1f15532ea20b1c10240a2516a6f8feee3836c07026320fffc4ab300eb76

Contents?: true

Size: 1.09 KB

Versions: 1

Compression:

Stored size: 1.09 KB

Contents

# frozen_string_literal: true

RSpec.describe Yookassa do
  it "has a version number" do
    expect(Yookassa::VERSION).not_to be nil
  end

  before do
    Yookassa.configure do |config|
      config.shop_id = 123
      config.api_key = "test_321"
    end
  end

  describe ".configure" do
    it "stores settings and provides access to credentials" do
      expect(Yookassa.config.shop_id).to eq(123)
      expect(Yookassa.config.api_key).to eq("test_321")
    end
  end

  describe ".client" do
    context "when no settings are provided" do
      before { Yookassa.instance_variable_set(:@config, nil) }

      it "raises an error" do
        expect { Yookassa.client }.to raise_error(Yookassa::ConfigError)
      end
    end

    context "when instance configured" do
      it "creates and stores client" do
        expect(Yookassa.client).to be_a(Yookassa::Client)
        expect(Yookassa.client).to eq(Yookassa.client)
      end
    end
  end

  describe ".payments" do
    it "delegates request to client and creates an instance" do
      expect(Yookassa.payments).to be_a(Yookassa::Payments)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
yookassa-0.2.0 spec/yookassa_spec.rb