Sha256: 188072c0ee4823e33b7b98bc3807749607e73978bd0192e0ed40eaaf1873be73

Contents?: true

Size: 1.25 KB

Versions: 7

Compression:

Stored size: 1.25 KB

Contents

RSpec.describe HTTParty::HashConversions do
  describe ".to_params" do
    it "creates a params string from a hash" do
      hash = {
        name: "bob",
        address: {
          street: '111 ruby ave.',
          city: 'ruby central',
          phones: ['111-111-1111', '222-222-2222']
        }
      }
      expect(HTTParty::HashConversions.to_params(hash)).to eq("name=bob&address[street]=111%20ruby%20ave.&address[city]=ruby%20central&address[phones][]=111-111-1111&address[phones][]=222-222-2222")
    end
  end

  describe ".normalize_param" do
    context "value is an array" do
      it "creates a params string" do
        expect(
          HTTParty::HashConversions.normalize_param(:people, ["Bob Jones", "Mike Smith"])
        ).to eq("people[]=Bob%20Jones&people[]=Mike%20Smith&")
      end
    end

    context "value is hash" do
      it "creates a params string" do
        expect(
          HTTParty::HashConversions.normalize_param(:person, { name: "Bob Jones" })
        ).to eq("person[name]=Bob%20Jones&")
      end
    end

    context "value is a string" do
      it "creates a params string" do
        expect(
          HTTParty::HashConversions.normalize_param(:name, "Bob Jones")
        ).to eq("name=Bob%20Jones&")
      end
    end
  end
end

Version data entries

7 entries across 6 versions & 3 rubygems

Version Path
simplenet-client-0.2.0 ./vendor/bundle/ruby/1.9.1/gems/httparty-0.13.7/spec/httparty/hash_conversions_spec.rb
simplenet-client-0.2.0 ./vendor/bundle/ruby/2.0.0/gems/httparty-0.13.7/spec/httparty/hash_conversions_spec.rb
httparty-0.13.7 spec/httparty/hash_conversions_spec.rb
httparty-0.13.6 spec/httparty/hash_conversions_spec.rb
httpserious-0.13.5.lstoll1 spec/httparty/hash_conversions_spec.rb
httparty-0.13.5 spec/httparty/hash_conversions_spec.rb
httparty-0.13.4 spec/httparty/hash_conversions_spec.rb