Sha256: 1428cea420cf1ff37c640b1534dbe2f0b336b4fab08470ef56196675147146a4

Contents?: true

Size: 1.83 KB

Versions: 8

Compression:

Stored size: 1.83 KB

Contents

require 'test_helper'

class TestFakeWebQueryString < Test::Unit::TestCase

  def test_register_uri_string_with_query_params
    FakeWeb.register_uri(:get, 'http://example.com/?a=1&b=1', :body => 'foo')
    assert FakeWeb.registered_uri?(:get, 'http://example.com/?a=1&b=1')

    FakeWeb.register_uri(:post, URI.parse("http://example.org/?a=1&b=1"), :body => "foo")
    assert FakeWeb.registered_uri?(:post, "http://example.org/?a=1&b=1")
  end

  def test_register_uri_with_query_params_and_check_in_different_order
    FakeWeb.register_uri(:get, 'http://example.com/?a=1&b=1', :body => 'foo')
    assert FakeWeb.registered_uri?(:get, 'http://example.com/?b=1&a=1')

    FakeWeb.register_uri(:post, URI.parse('http://example.org/?a=1&b=1'), :body => 'foo')
    assert FakeWeb.registered_uri?(:post, 'http://example.org/?b=1&a=1')
  end

  def test_registered_uri_gets_recognized_with_empty_query_params
    FakeWeb.register_uri(:get, 'http://example.com/', :body => 'foo')
    assert FakeWeb.registered_uri?(:get, 'http://example.com/?')

    FakeWeb.register_uri(:post, URI.parse('http://example.org/'), :body => 'foo')
    assert FakeWeb.registered_uri?(:post, 'http://example.org/?')
  end

  def test_register_uri_with_empty_query_params_and_check_with_none
    FakeWeb.register_uri(:get, 'http://example.com/?', :body => 'foo')
    assert FakeWeb.registered_uri?(:get, 'http://example.com/')

    FakeWeb.register_uri(:post, URI.parse('http://example.org/?'), :body => 'foo')
    assert FakeWeb.registered_uri?(:post, 'http://example.org/')
  end

  def test_registry_sort_query_params
    assert_equal "a=1&b=2", FakeWeb::Registry.instance.send(:sort_query_params, "b=2&a=1")
  end

  def test_registry_sort_query_params_sorts_by_value_if_keys_collide
    assert_equal "a=1&a=2&b=2", FakeWeb::Registry.instance.send(:sort_query_params, "a=2&b=2&a=1")
  end

end

Version data entries

8 entries across 8 versions & 5 rubygems

Version Path
messagebus_ruby_api-0.4.7 spec/ruby/1.9.1/gems/fakeweb-1.3.0/test/test_query_string.rb
messagebus_ruby_api-0.4.4 spec/ruby/1.9.1/gems/fakeweb-1.3.0/test/test_query_string.rb
putio-0.0.1.pre2 development/ruby/1.8/gems/fakeweb-1.3.0/test/test_query_string.rb
putio-0.0.1.pre development/ruby/1.8/gems/fakeweb-1.3.0/test/test_query_string.rb
cotweet-fakeweb-1.3.0 test/test_query_string.rb
fakeweb-1.3.0 test/test_query_string.rb
corntrace-fakeweb-1.2.9 test/test_query_string.rb
fakeweb-1.2.8 test/test_query_string.rb