Sha256: ac110f12f2a7a9487546b094a56a971a1373c7cc3687ed404deba49541224838

Contents?: true

Size: 853 Bytes

Versions: 17

Compression:

Stored size: 853 Bytes

Contents

require "spec_helper"

describe Frenchy::Request do
  describe "path substitution" do
    it "substitutes path parameters" do
      request = Frenchy::Request.new("service", "get", "/v1/users/:id/:token", {"id" => 1234, "token" => "md5something"}, {})
      expect(request.path).to eql("/v1/users/1234/md5something")
    end

    it "retains remaining parameters as query parameters" do
      request = Frenchy::Request.new("service", "get", "/v1/users/:id", {"id" => 1234, "token" => "md5something"}, {})
      expect(request.path).to eql("/v1/users/1234")
      expect(request.params).to eql({"token" => "md5something"})
    end

    it "raises an error for missing path parameters" do
      expect do
        Frenchy::Request.new("service", "get", "/v1/users/:id/:token", {"id" => 1234}, {})
      end.to raise_error(Frenchy::Error)
    end
  end
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
frenchy-0.6.2 spec/lib/frenchy/request_spec.rb
frenchy-0.6.1 spec/lib/frenchy/request_spec.rb
frenchy-0.6.0 spec/lib/frenchy/request_spec.rb
frenchy-0.5.2 spec/lib/frenchy/request_spec.rb
frenchy-0.5.1 spec/lib/frenchy/request_spec.rb
frenchy-0.5.0 spec/lib/frenchy/request_spec.rb
frenchy-0.4.0 spec/lib/frenchy/request_spec.rb
frenchy-0.3.0 spec/lib/frenchy/request_spec.rb
frenchy-0.2.9 spec/lib/frenchy/request_spec.rb
frenchy-0.2.8 spec/lib/frenchy/request_spec.rb
frenchy-0.2.7 spec/lib/frenchy/request_spec.rb
frenchy-0.2.6 spec/lib/frenchy/request_spec.rb
frenchy-0.2.5 spec/lib/frenchy/request_spec.rb
frenchy-0.2.4 spec/lib/frenchy/request_spec.rb
frenchy-0.2.3 spec/lib/frenchy/request_spec.rb
frenchy-0.2.2 spec/lib/frenchy/request_spec.rb
frenchy-0.2.1 spec/lib/frenchy/request_spec.rb