class Fluoride::Analyzer::PatternCollapser

Public Class Methods

new(pattern, methods_hash) click to toggle source
# File lib/fluoride-analyzer/pattern-collapser.rb, line 3
def initialize(pattern, methods_hash)
  @pattern = pattern
  @methods_hash = methods_hash
end

Public Instance Methods

erase_list() click to toggle source
# File lib/fluoride-analyzer/pattern-collapser.rb, line 8
def erase_list
  %w{ format }
end
param_letname_map() click to toggle source
# File lib/fluoride-analyzer/pattern-collapser.rb, line 18
def param_letname_map
  { :id => :model_id }
end
params_fields() click to toggle source
# File lib/fluoride-analyzer/pattern-collapser.rb, line 22
def params_fields
  @methods_hash.values.first.values.first.first['path_params'].keys.reject do |key|
    key == :format
  end.map do |name|
    param_letname_map.fetch(name, name)
  end
end
pattern() click to toggle source
# File lib/fluoride-analyzer/pattern-collapser.rb, line 12
def pattern
  erase_list.inject(@pattern) do |pattern, erase|
    pattern.sub(/\(.:#{erase}\)/,'')
  end
end