class Fluoride::Analyzer::GroupCollapser
Attributes
letname_map[R]
method[R]
status[R]
Public Class Methods
new(pattern, letname_map, method, status, requests_list)
click to toggle source
# File lib/fluoride-analyzer/group-collapser.rb, line 5 def initialize(pattern, letname_map, method, status, requests_list) @pattern = pattern @letname_map = letname_map @request_list = requests_list @method, @status = method, status end
Public Instance Methods
each_group_context() { |group_context| ... }
click to toggle source
# File lib/fluoride-analyzer/group-collapser.rb, line 36 def each_group_context path_tuples = requests.map do |request| [request['path'], request['query_params'], request] end reduced_hash = Hash.new{|h,k| h[k] = []} path_tuples.each do |path, query, request| reduced_hash[ [ reduce_path(path, request), reduce_query(query, request) ] ] << request end reduced_hash.each do |(path, query_params), requests| next if status == 304 yield GroupContext.new(method, status, requests, path, query_params) end end
reduce_path(path, request)
click to toggle source
# File lib/fluoride-analyzer/group-collapser.rb, line 21 def reduce_path(path, request) path = @pattern.dup request['path_params'].each_pair do |name, value| next if stet_list.include?(name) target_name = letname_map.fetch(name, name) path.sub!(/:#{name}/,"\#{#{target_name}}") end path end
reduce_query(query, request)
click to toggle source
# File lib/fluoride-analyzer/group-collapser.rb, line 31 def reduce_query(query, request) "" #none captured (yet?) end
requests()
click to toggle source
# File lib/fluoride-analyzer/group-collapser.rb, line 17 def requests @request_list end
stet_list()
click to toggle source
# File lib/fluoride-analyzer/group-collapser.rb, line 13 def stet_list [] end