Module: Split::DashboardHelpers

Defined in:
lib/split/dashboard/helpers.rb

Instance Method Summary collapse

Instance Method Details

#confidence_level(z_score) ⇒ Object



29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# File 'lib/split/dashboard/helpers.rb', line 29

def confidence_level(z_score)
  return z_score if z_score.is_a? String

  z = round(z_score.to_s.to_f, 3).abs

  if z >= 2.58
    "99% confidence"
  elsif z >= 1.96
    "95% confidence"
  elsif z >= 1.65
    "90% confidence"
  else
    "Insufficient confidence"
  end
end

#h(text) ⇒ Object



5
6
7
# File 'lib/split/dashboard/helpers.rb', line 5

def h(text)
  Rack::Utils.escape_html(text)
end

#number_to_percentage(number, precision = 2) ⇒ Object



17
18
19
# File 'lib/split/dashboard/helpers.rb', line 17

def number_to_percentage(number, precision = 2)
  round(number * 100)
end

#path_prefixObject



13
14
15
# File 'lib/split/dashboard/helpers.rb', line 13

def path_prefix
  request.env["SCRIPT_NAME"]
end

#round(number, precision = 2) ⇒ Object



21
22
23
24
25
26
27
# File 'lib/split/dashboard/helpers.rb', line 21

def round(number, precision = 2)
  begin
    BigDecimal(number.to_s)
  rescue ArgumentError
    BigDecimal(0)
  end.round(precision).to_f
end

#url(*path_parts) ⇒ Object



9
10
11
# File 'lib/split/dashboard/helpers.rb', line 9

def url(*path_parts)
  [ path_prefix, path_parts ].join("/").squeeze("/")
end