class Fluoride::Analyzer::Patterner

Attributes

rails_routes[R]

Public Class Methods

for(rails_routes) click to toggle source
# File lib/fluoride-analyzer/patterner.rb, line 5
def self.for(rails_routes)
  if rails_routes.respond_to? :recognize_path
    Rails4.new(rails_routes)
  else
    Rails3.new(rails_routes)
  end
end
new(rails_routes) click to toggle source
# File lib/fluoride-analyzer/patterner.rb, line 29
def initialize(rails_routes)
  @rails_routes = rails_routes
end

Public Instance Methods

base_env() click to toggle source
# File lib/fluoride-analyzer/patterner.rb, line 13
def base_env
  @base_env ||= {
    "HTTP_REFERER" => '',
    "HTTP_COOKIE" => '',
    "HTTP_AUTHORIZATION" => '',
    "REQUEST_METHOD" => "GET",
    'HTTP_HOST' => '',
    'SERVER_NAME' => '',
    'SERVER_ADDR' => '',
    'SERVER_PORT' => '80',
    "SCRIPT_NAME" => '',
    "QUERY_STRING" => '',
    'rack.input' => '' #body
  }
end
build_request(request_env) click to toggle source
# File lib/fluoride-analyzer/patterner.rb, line 34
def build_request(request_env)
  ActionDispatch::Request.new(base_env.merge(request_env))
end
route_map() click to toggle source
# File lib/fluoride-analyzer/patterner.rb, line 38
def route_map
  @route_map ||=
    begin
      ad_routes_array   = rails_routes.routes
      rack_routes_array = rails_routes.set.instance_eval{ @routes }
      Hash[ rack_routes_array.zip(ad_routes_array) ]
    end
end
route_set() click to toggle source
# File lib/fluoride-analyzer/patterner.rb, line 47
def route_set
  @route_set ||=
    begin
      set = rails_routes.set
      set
    end
end