Sha256: e10bf3adc0602ac68fa53bf77f2646447391ac4e87d69a9fcdcf705b3bf77d75

Contents?: true

Size: 1.56 KB

Versions: 6

Compression:

Stored size: 1.56 KB

Contents

$:.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))

require 'murlsh'

require 'test/unit'

class ReferrerTest < Test::Unit::TestCase

  def setup
    @qmap = {
      /www\.foo\.com\/search/ => 'q',
    }
  end

  def instantiate(url)
    Murlsh::Referrer.new(url)
  end

  def test_url_nil
    r = instantiate(nil)
    assert_equal('', r.hostpath)
    assert_equal({}, r.query_string)
  end

  def test_url_nil_block
    r = instantiate(nil)
    r.search_query(@qmap) { |x| flunk }
  end

  def test_url_empty
    r = instantiate('')
    assert_equal('', r.hostpath)
    assert_equal({}, r.query_string)
  end

  def test_url_empty_block
    r = instantiate('')
    r.search_query(@qmap) { |x| flunk }
  end

  def test_hostpath_not_found
    r = instantiate('http://www.bar.com/search?q=test&a=1&b=2&c=3')
    assert_equal(nil, r.search_query(@qmap))
  end

  def test_hostpath_not_found_block
    r = instantiate('http://www.bar.com/search?q=test&a=1&b=2&c=3')
    r.search_query(@qmap) { |x| flunk }
  end

  def test_query_not_found
    r = instantiate('http://www.foo.com/search?a=1&b=2&c=3')
    assert_equal(nil, r.search_query(@qmap))
  end

  def test_query_not_found_block
    r = instantiate('http://www.foo.com/search?a=1&b=2&c=3')
    r.search_query(@qmap) { |x| flunk }
  end

  def test_good
    r = instantiate('http://www.foo.com/search?q=test&a=1&b=2&c=3')
    assert_equal('test', r.search_query(@qmap))
  end

  def test_good_block
    r = instantiate('http://www.foo.com/search?q=test&a=1&b=2&c=3')
    r.search_query(@qmap) { |x| assert_equal('test', x) }
  end

end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
murlsh-0.4.0 test/referrer_test.rb
murlsh-0.3.0 test/referrer_test.rb
murlsh-0.2.4 test/referrer_test.rb
murlsh-0.2.3 test/referrer_test.rb
murlsh-0.2.2 test/referrer_test.rb
murlsh-0.2.1 test/referrer_test.rb