Sha256: ea8d293ec7f0b978b68eca987fe8f8cdc168f6d1e2080637726377092d82a73d

Contents?: true

Size: 1019 Bytes

Versions: 3

Compression:

Stored size: 1019 Bytes

Contents

# encoding: utf-8
require 'test_helper'

class ErrorHandlingTest < Test::Unit::TestCase

  def test_does_not_choke_on_timeout
    # keep test output clean: suppress timeout warning
    orig = $VERBOSE; $VERBOSE = nil
    all_lookups.each do |l|
      Geocoder::Configuration.lookup = l
      assert_nothing_raised { Geocoder.search("timeout") }
    end
    $VERBOSE = orig
  end

  def test_always_raise_timeout_error
    Geocoder::Configuration.always_raise = [TimeoutError]
    all_lookups.each do |l|
      lookup = Geocoder.send(:get_lookup, l)
      assert_raises TimeoutError do
        lookup.send(:results, "timeout")
      end
    end
    Geocoder::Configuration.always_raise = []
  end

  def test_always_raise_socket_error
    Geocoder::Configuration.always_raise = [SocketError]
    all_lookups.each do |l|
      lookup = Geocoder.send(:get_lookup, l)
      assert_raises SocketError do
        lookup.send(:results, "socket_error")
      end
    end
    Geocoder::Configuration.always_raise = []
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
geocoder-1.0.5 test/error_handling_test.rb
geocoder-1.0.4 test/error_handling_test.rb
geocoder-1.0.3 test/error_handling_test.rb