Commit 8a2fd6f7 authored by Paul Asmuth's avatar Paul Asmuth
Browse files

Merge pull request #56 from SergeyJey/tokens_contrib

Tokens generation for non-english widgets and dashboards
parents 7dc91e87 f56b0f54
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -17,7 +17,9 @@ class FnordMetric::Dashboard
  end

  def token
    title.to_s.gsub(/[\W]/, '')
    token = title.to_s.gsub(/[\W]/, '')
    token = Digest::SHA1.hexdigest(title.to_s) if token.empty?
    token
  end

  def to_json
+3 −1
Original line number Diff line number Diff line
@@ -17,7 +17,9 @@ class FnordMetric::Widget
  end

  def token
    title.to_s.gsub(/[\W]/, '').downcase
    token = title.to_s.gsub(/[\W]/, '').downcase
    token = Digest::SHA1.hexdigest(title.to_s) if token.empty?
    token
  end

  def add_gauges(gauges)
+6 −0
Original line number Diff line number Diff line
# encoding: utf-8
require ::File.expand_path('../spec_helper.rb', __FILE__)

describe FnordMetric::Dashboard do
@@ -20,6 +21,11 @@ describe FnordMetric::Dashboard do
    dashboard.token.should == 'MyF00barDash_board'
  end

  it "should build the correct token if the dashboard name contains non-english characters" do
    dashboard = FnordMetric::Dashboard.new(:title => 'Новая статистика!'){ |dash| }
    dashboard.token.should_not be_empty
  end

  it "should add a widget" do
    pending("fix this")
    #dashboard = FnordMetric::Dashboard.new(:title => 'My!F00bar-.Dash_board'){ |dash| }