require 'test/helper'

describe Hash do
  describe ".to_params" do
    it "should transform a basic hash into HTTP POST Params" do
      {:a => "alpha", :b => "beta"}.to_params.should == "a=alpha&b=beta"
    end
    
    it "should transform a more complex hash into HTTP POST Params" do
      {:a => "a", :b => ["c", "d", "e"]}.to_params.should == "a=a&b[0]=c&b[1]=d&b[2]=e"
    end
    
    it "should transform a very complex hash into HTTP POST Params" do
      {:a => "a", :b => [{:c => "c", :d => "d"}, {:e => "e", :f => "f"}]}.to_params.should == "a=a&b[0][d]=d&b[0][c]=c&b[1][e]=e&b[1][f]=f"
    end
  end
end