class Mocha::ParameterMatchers::EquivalentUri
Parameter matcher which matches URIs with equivalent query strings.
Public Class Methods
new(uri)
click to toggle source
@private
# File lib/mocha/parameter_matchers/equivalent_uri.rb, line 33 def initialize(uri) @uri = URI.parse(uri) end
Public Instance Methods
matches?(available_parameters)
click to toggle source
@private
# File lib/mocha/parameter_matchers/equivalent_uri.rb, line 38 def matches?(available_parameters) actual = explode(URI.parse(available_parameters.shift)) expected = explode(@uri) actual == expected end
mocha_inspect()
click to toggle source
@private
# File lib/mocha/parameter_matchers/equivalent_uri.rb, line 45 def mocha_inspect "equivalent_uri(#{@uri.mocha_inspect})" end
Private Instance Methods
explode(uri)
click to toggle source
@private
# File lib/mocha/parameter_matchers/equivalent_uri.rb, line 52 def explode(uri) query_hash = CGI.parse(uri.query || '') URI::Generic::COMPONENT.inject({}) { |h, k| h.merge(k => uri.__send__(k)) }.merge(:query => query_hash) end