Sha256: 2707734672a948604b96b248b864646ef809e581a5946830084946a3880835fe

Contents?: true

Size: 1.11 KB

Versions: 1

Compression:

Stored size: 1.11 KB

Contents

require 'spec_helper'

describe BacklogApiClient::Client do
  let(:http_cli) { double('http_cli') }
  let(:space_name) { 'test_space_name' }
  let(:api_key) { 'test_api_key' }
  before { expect(Faraday).to receive(:new).with(url: "https://#{space_name}/api/v2").and_return(http_cli) }

  describe '#get' do
    let(:params) { { params: 'test-param' } }
    let(:resource_path) { 'test/resource' }
    before { expect(http_cli).to receive(:get).with("#{resource_path}?#{q(params)}&apiKey=#{api_key}").and_return('ok') }
    subject { described_class.new(space_name, api_key).get(resource_path, params) }
    it { should eq 'ok' }
  end

  describe '#post' do
    # ToDo: write test
  end

  describe '#patch' do
    # ToDo: write test
  end

  describe '#delete' do
    let(:resource_path) { 'test/resource' }
    before { expect(http_cli).to receive(:delete).with("#{resource_path}?apiKey=#{api_key}").and_return('ok') }
    subject { described_class.new(space_name, api_key).delete(resource_path) }
    it { should eq 'ok' }
  end

  def q(hash)
    hash.each_with_object([]) { |(k, v), ary| ary << "#{k}=#{v}" }.join('&')
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
backlog-api-client-0.0.1 spec/backlog-api-client/client_spec.rb