class ActionDispatch::Journey::Route

def score(constraints)

def score(constraints)
  required_keys = path.required_names
  supplied_keys = constraints.map { |k,v| v && k.to_s }.compact
  return -1 unless (required_keys - supplied_keys).empty?
  score = (supplied_keys & path.names).length
  score + (required_defaults.length * 2)
end