main
 1# frozen_string_literal: true
 2
 3require 'uri'
 4
 5RSpec::Matchers.define :have_query_param do |key|
 6  match do |url|
 7    query_params_from(url)[key].present?
 8  end
 9
10  def query_params_from(url)
11    Hash[query_for(url).split('&').map { |xxx| xxx.split('=', 2) }]
12  end
13
14  def uri_for(url)
15    URI.parse(url)
16  end
17
18  def query_for(url)
19    uri_for(url).query
20  end
21end