Sha256: 9c2269c5dcaf74eaafc17e582de845e2dcce20a6a5605a9c17a557ac1d74bb22

Contents?: true

Size: 1.22 KB

Versions: 3

Compression:

Stored size: 1.22 KB

Contents

require 'spec_helper'

describe Ridley::Connection do
  let(:server_url) { "https://api.opscode.com" }
  let(:client_name) { "reset" }
  let(:client_key) { fixtures_path.join("reset.pem").to_s }

  subject do
    described_class.new(server_url, client_name, client_key)
  end

  describe "#api_type" do
    it "returns :foss if the organization is not set" do
      subject.stub(:organization).and_return(nil)

      subject.api_type.should eql(:foss)
    end

    it "returns :hosted if the organization is set" do
      subject.stub(:organization).and_return("vialstudios")

      subject.api_type.should eql(:hosted)
    end
  end

  describe "#stream" do
    let(:target) { "http://test.it/file" }
    let(:destination) { tmp_path.join("test.file") }
    let(:contents) { "SOME STRING STUFF\nHERE.\n" }

    before(:each) do
      stub_request(:get, "http://test.it/file").
        to_return(status: 200, body: contents)
    end

    it "creates a destination file on disk" do
      subject.stream(target, destination)

      File.exist?(destination).should be_true
    end

    it "contains the contents of the response body" do
      subject.stream(target, destination)

      File.read(destination).should include(contents)
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
ridley-0.7.0 spec/unit/ridley/connection_spec.rb
ridley-0.7.0.rc4 spec/unit/ridley/connection_spec.rb
ridley-0.7.0.rc3 spec/unit/ridley/connection_spec.rb