class Rectify::RSpec::DatabaseReporter::Display

Attributes

query_stats[R]

Public Class Methods

new(query_stats) click to toggle source
# File lib/rectify/rspec/database_reporter/display.rb, line 5
def initialize(query_stats)
  @query_stats = query_stats
end

Public Instance Methods

render() click to toggle source
# File lib/rectify/rspec/database_reporter/display.rb, line 9
def render
  return if query_stats.empty?

  header
  rows
  summary
end

Private Instance Methods

header() click to toggle source
# File lib/rectify/rspec/database_reporter/display.rb, line 25
def header
  puts ""
  puts headers
  puts "-" * headers.length
end
headers() click to toggle source
# File lib/rectify/rspec/database_reporter/display.rb, line 31
def headers
  target_header  = "Target".ljust(target_length)
  type_header    = "Type".ljust(10)
  queries_header = "Queries".rjust(7)
  time_header    = "Time (s)".rjust(7)

  "#{target_header} | " \
  "#{type_header} | " \
  "#{queries_header} | " \
  "#{time_header}"
end
rows() click to toggle source
# File lib/rectify/rspec/database_reporter/display.rb, line 43
def rows
  query_stats.each do |target, type, count, time|
    puts(
      "#{target.ljust(target_length)} | " \
      "#{type.to_s.ljust(10)} | " \
      "#{count.to_s.rjust(7)} | " \
      "#{time.to_s.rjust(7)}"
    )
  end
end
summary() click to toggle source
# File lib/rectify/rspec/database_reporter/display.rb, line 54
def summary
  puts ""
  puts "Database Queries: #{query_stats.total_queries} "\
       "in #{query_stats.total_time}s"
end
target_length() click to toggle source
# File lib/rectify/rspec/database_reporter/display.rb, line 21
def target_length
  query_stats.longest_target
end