class WebMock::RequestPattern
def create_uri_pattern(uri)
def create_uri_pattern(uri) if uri.is_a?(Regexp) URIRegexpPattern.new(uri) elsif uri.is_a?(Addressable::Template) URIAddressablePattern.new(uri) elsif uri.respond_to?(:call) URICallablePattern.new(uri) elsif uri.is_a?(::URI::Generic) URIStringPattern.new(uri.to_s) elsif uri.respond_to?(:to_str) URIStringPattern.new(uri.to_str) else raise ArgumentError.new("URI should be a String, Regexp, Addressable::Template, a callable object, or respond to #to_str. Got: #{uri.class}") end end