Class: QueryTracker::Printer::HtmlCompare

Inherits:
Base
  • Object
show all
Defined in:
lib/query_tracker/printer/html_compare.rb

Instance Method Summary collapse

Methods inherited from Base

#css_content, #filter_data, #js_content, #open_file, #sort_data

Constructor Details

#initialize(data_1:, data_2:) ⇒ HtmlCompare

Returns a new instance of HtmlCompare.



10
11
12
13
14
15
16
17
18
19
# File 'lib/query_tracker/printer/html_compare.rb', line 10

def initialize data_1:, data_2:
  super()
  @template_path = File.join(__dir__, 'templates', 'comparing.html.erb')
  @css_path = File.join(__dir__, 'templates', 'style.css')
  @js_path = File.join(__dir__, 'templates', 'bar_chart.js')
  @script_1_name = data_1.keys.first
  @script_2_name = data_2.keys.first
  @data_1 = data_1[@script_1_name]
  @data_2 = data_2[@script_2_name]
end

Instance Method Details



21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/query_tracker/printer/html_compare.rb', line 21

def print
  # used by binding on erb templates
  data_1 = sort_data(@data_1)
  data_2 = sort_data(@data_2)
  tables = data_1.keys | data_2.keys
  total_query_count_1 = data_1.values.sum { |v| v[:count] }
  total_query_count_2 = data_2.values.sum { |v| v[:count] }
  chart_data = generate_chart_data_compare(data_1, data_2)
  # end
  html_dest = generate_html(binding)
  open_file(html_dest)
end