class Selenium::WebDriver::Remote::Bridge::LocatorConverter

def convert(how, what)

def convert(how, what)
  how = SearchContext.finders[how.to_sym] || how
  case how
  when 'class name'
    how = 'css selector'
    what = ".#{escape_css(what.to_s)}"
  when 'id'
    how = 'css selector'
    what = "##{escape_css(what.to_s)}"
  when 'name'
    how = 'css selector'
    what = "*[name='#{escape_css(what.to_s)}']"
  end
  if what.is_a?(Hash)
    what = what.each_with_object({}) do |(h, w), hash|
      h, w = convert(h.to_s, w)
      hash[h] = w
    end
  end
  [how, what]
end

def escape_css(string)

def escape_css(string)
  string = string.gsub(ESCAPE_CSS_REGEXP) { |match| "\\#{match}" }
  string = "\\#{UNICODE_CODE_POINT + Integer(string[0])} #{string[1..]}" if string[0]&.match?(/[[:digit:]]/)
  string
end