influxdb-rails 0.4.999 → 1.0.0.beta1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/.rubocop.yml +77 -0
- data/.travis.yml +21 -14
- data/CHANGELOG.md +27 -8
- data/README.md +14 -9
- data/Rakefile +7 -8
- data/gemfiles/Gemfile.rails-5.2.x +7 -0
- data/influxdb-rails.gemspec +26 -37
- data/lib/influxdb-rails.rb +94 -119
- data/lib/influxdb/rails/air_traffic_controller.rb +22 -20
- data/lib/influxdb/rails/backtrace.rb +5 -5
- data/lib/influxdb/rails/configuration.rb +78 -47
- data/lib/influxdb/rails/exception_presenter.rb +53 -42
- data/lib/influxdb/rails/instrumentation.rb +15 -15
- data/lib/influxdb/rails/logger.rb +7 -4
- data/lib/influxdb/rails/middleware/hijack_render_exception.rb +4 -19
- data/lib/influxdb/rails/middleware/hijack_rescue_action_everywhere.rb +11 -12
- data/lib/influxdb/rails/rack.rb +2 -2
- data/lib/influxdb/rails/railtie.rb +16 -30
- data/lib/influxdb/rails/version.rb +1 -1
- data/lib/rails/generators/influxdb/influxdb_generator.rb +5 -4
- data/spec/controllers/widgets_controller_spec.rb +2 -2
- data/spec/integration/exceptions_spec.rb +5 -9
- data/spec/integration/metrics_spec.rb +2 -4
- data/spec/spec_helper.rb +16 -13
- data/spec/support/rails4/app.rb +10 -5
- data/spec/support/rails5/app.rb +11 -5
- data/spec/unit/backtrace_spec.rb +2 -5
- data/spec/unit/configuration_spec.rb +19 -15
- data/spec/unit/exception_presenter_spec.rb +3 -3
- data/spec/unit/influxdb_rails_spec.rb +104 -56
- metadata +38 -39
- data/gemfiles/Gemfile.rails-4.0.x +0 -8
- data/gemfiles/Gemfile.rails-4.1.x +0 -7
@@ -1,12 +1,15 @@
|
|
1
1
|
module InfluxDB
|
2
2
|
module Rails
|
3
|
-
module Logger
|
4
|
-
PREFIX = "[InfluxDB::Rails] "
|
3
|
+
module Logger # rubocop:disable Style/Documentation
|
4
|
+
PREFIX = "[InfluxDB::Rails] ".freeze
|
5
5
|
|
6
6
|
private
|
7
|
+
|
7
8
|
def log(level, message)
|
8
|
-
|
9
|
-
|
9
|
+
c = InfluxDB::Rails.configuration
|
10
|
+
return if level != :error && !c.debug?
|
11
|
+
|
12
|
+
c.logger&.send(level, PREFIX + message)
|
10
13
|
end
|
11
14
|
end
|
12
15
|
end
|
@@ -1,31 +1,16 @@
|
|
1
1
|
module InfluxDB
|
2
2
|
module Rails
|
3
3
|
module Middleware
|
4
|
-
module HijackRenderException
|
5
|
-
def render_exception(env,
|
6
|
-
controller = env["action_controller.instance"]
|
4
|
+
module HijackRenderException # rubocop:disable Style/Documentation
|
5
|
+
def render_exception(env, ex)
|
6
|
+
controller = env["action_controller.instance"] || env.controller_instance
|
7
7
|
request_data = controller.try(:influxdb_request_data) || {}
|
8
8
|
unless InfluxDB::Rails.configuration.ignore_user_agent?(request_data[:user_agent])
|
9
|
-
InfluxDB::Rails.report_exception_unless_ignorable(
|
9
|
+
InfluxDB::Rails.report_exception_unless_ignorable(ex, request_data)
|
10
10
|
end
|
11
11
|
super
|
12
12
|
end
|
13
13
|
end
|
14
|
-
|
15
|
-
module OldHijackRenderException
|
16
|
-
def self.included(base)
|
17
|
-
base.send(:alias_method_chain, :render_exception, :influxdb)
|
18
|
-
end
|
19
|
-
|
20
|
-
def render_exception_with_influxdb(env, e)
|
21
|
-
controller = env["action_controller.instance"]
|
22
|
-
request_data = controller.try(:influxdb_request_data) || {}
|
23
|
-
unless InfluxDB::Rails.configuration.ignore_user_agent?(request_data[:user_agent])
|
24
|
-
InfluxDB::Rails.report_exception_unless_ignorable(e, request_data)
|
25
|
-
end
|
26
|
-
render_exception_without_influxdb(env, e)
|
27
|
-
end
|
28
|
-
end
|
29
14
|
end
|
30
15
|
end
|
31
16
|
end
|
@@ -1,32 +1,31 @@
|
|
1
1
|
module InfluxDB
|
2
2
|
module Rails
|
3
3
|
module Middleware
|
4
|
-
module HijackRescueActionEverywhere
|
4
|
+
module HijackRescueActionEverywhere # rubocop:disable Style/Documentation
|
5
5
|
def self.included(base)
|
6
6
|
base.send(:alias_method_chain, :rescue_action_in_public, :influxdb)
|
7
7
|
base.send(:alias_method_chain, :rescue_action_locally, :influxdb)
|
8
8
|
end
|
9
9
|
|
10
10
|
private
|
11
|
-
|
12
|
-
|
13
|
-
|
11
|
+
|
12
|
+
def rescue_action_in_public_with_influxdb(ex)
|
13
|
+
handle_exception(ex)
|
14
|
+
rescue_action_in_public_without_influxdb(ex)
|
14
15
|
end
|
15
16
|
|
16
|
-
def rescue_action_locally_with_influxdb(
|
17
|
-
handle_exception(
|
18
|
-
rescue_action_locally_without_influxdb(
|
17
|
+
def rescue_action_locally_with_influxdb(ex)
|
18
|
+
handle_exception(ex)
|
19
|
+
rescue_action_locally_without_influxdb(ex)
|
19
20
|
end
|
20
21
|
|
21
|
-
def handle_exception(
|
22
|
+
def handle_exception(ex)
|
22
23
|
request_data = influxdb_request_data || {}
|
24
|
+
return if InfluxDB::Rails.configuration.ignore_user_agent?(request_data[:user_agent])
|
23
25
|
|
24
|
-
|
25
|
-
InfluxDB::Rails.report_exception_unless_ignorable(e, request_data)
|
26
|
-
end
|
26
|
+
InfluxDB::Rails.report_exception_unless_ignorable(ex, request_data)
|
27
27
|
end
|
28
28
|
end
|
29
29
|
end
|
30
30
|
end
|
31
31
|
end
|
32
|
-
|
data/lib/influxdb/rails/rack.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
module InfluxDB
|
2
2
|
module Rails
|
3
|
-
class Rack
|
3
|
+
class Rack # rubocop:disable Style/Documentation
|
4
4
|
def initialize(app)
|
5
5
|
@app = app
|
6
6
|
end
|
@@ -12,7 +12,7 @@ module InfluxDB
|
|
12
12
|
def _call(env)
|
13
13
|
begin
|
14
14
|
response = @app.call(env)
|
15
|
-
rescue => e
|
15
|
+
rescue StandardError => e
|
16
16
|
InfluxDB::Rails.transmit_unless_ignorable(e, env)
|
17
17
|
raise(e)
|
18
18
|
end
|
@@ -1,54 +1,40 @@
|
|
1
|
-
require
|
2
|
-
require
|
1
|
+
require "influxdb"
|
2
|
+
require "rails"
|
3
3
|
|
4
4
|
module InfluxDB
|
5
5
|
module Rails
|
6
|
-
class Railtie < ::Rails::Railtie
|
6
|
+
class Railtie < ::Rails::Railtie # :nodoc:
|
7
7
|
initializer "influxdb.insert_rack_middleware" do |app|
|
8
8
|
app.config.middleware.insert 0, InfluxDB::Rails::Rack
|
9
9
|
end
|
10
10
|
|
11
11
|
config.after_initialize do
|
12
|
-
InfluxDB::Rails.configure(true)
|
13
|
-
config.logger ||= ::Rails.logger
|
14
|
-
config.environment ||= ::Rails.env
|
15
|
-
config.application_root ||= ::Rails.root
|
16
|
-
config.application_name ||= ::Rails.application.class.parent_name
|
17
|
-
config.framework = "Rails"
|
18
|
-
config.framework_version = ::Rails.version
|
19
|
-
end
|
12
|
+
InfluxDB::Rails.configure(true, &:load_rails_defaults)
|
20
13
|
|
21
14
|
ActiveSupport.on_load(:action_controller) do
|
22
|
-
require
|
15
|
+
require "influxdb/rails/air_traffic_controller"
|
23
16
|
include InfluxDB::Rails::AirTrafficController
|
24
|
-
require
|
17
|
+
require "influxdb/rails/instrumentation"
|
25
18
|
include InfluxDB::Rails::Instrumentation
|
26
19
|
end
|
27
20
|
|
28
|
-
|
29
|
-
|
30
|
-
exceptions_class = ::ActionDispatch::DebugExceptions
|
31
|
-
elsif defined?(::ActionDispatch::ShowExceptions)
|
32
|
-
require 'influxdb/rails/middleware/hijack_render_exception'
|
33
|
-
exceptions_class = ::ActionDispatch::ShowExceptions
|
34
|
-
end
|
35
|
-
|
36
|
-
InfluxDB::Rails.safely_prepend(
|
37
|
-
"HijackRenderException",
|
38
|
-
:from => InfluxDB::Rails::Middleware,
|
39
|
-
:to => exceptions_class
|
40
|
-
)
|
21
|
+
require "influxdb/rails/middleware/hijack_render_exception"
|
22
|
+
::ActionDispatch::DebugExceptions.prepend InfluxDB::Rails::Middleware::HijackRenderException
|
41
23
|
|
42
24
|
if defined?(ActiveSupport::Notifications)
|
43
|
-
|
44
|
-
|
25
|
+
listen = lambda do |name, start, finish, id, payload|
|
26
|
+
c = InfluxDB::Rails.configuration
|
27
|
+
|
28
|
+
if c.instrumentation_enabled? && !c.ignore_current_environment?
|
45
29
|
begin
|
46
30
|
InfluxDB::Rails.handle_action_controller_metrics(name, start, finish, id, payload)
|
47
|
-
rescue => e
|
48
|
-
|
31
|
+
rescue StandardError => e
|
32
|
+
c.logger.error "[InfluxDB::Rails] Failed writing points to InfluxDB: #{e.message}"
|
49
33
|
end
|
50
34
|
end
|
51
35
|
end
|
36
|
+
|
37
|
+
ActiveSupport::Notifications.subscribe "process_action.action_controller", &listen
|
52
38
|
end
|
53
39
|
end
|
54
40
|
end
|
@@ -1,14 +1,15 @@
|
|
1
|
-
require
|
1
|
+
require "rails/generators"
|
2
2
|
|
3
|
-
class InfluxdbGenerator < Rails::Generators::Base
|
3
|
+
class InfluxdbGenerator < Rails::Generators::Base # rubocop:disable Style/Documentation
|
4
4
|
desc "Description:\n This creates a Rails initializer for InfluxDB::Rails."
|
5
5
|
|
6
|
-
source_root File.expand_path(
|
6
|
+
source_root File.expand_path("templates", __dir__)
|
7
7
|
|
8
8
|
def copy_initializer_file
|
9
|
-
template "initializer.rb", "config/initializers/
|
9
|
+
template "initializer.rb", "config/initializers/influxdb_rails.rb"
|
10
10
|
end
|
11
11
|
|
12
12
|
def install
|
13
|
+
# nothing to do here
|
13
14
|
end
|
14
15
|
end
|
@@ -1,6 +1,6 @@
|
|
1
|
-
require
|
1
|
+
require "spec_helper"
|
2
2
|
|
3
|
-
RSpec.describe WidgetsController, :
|
3
|
+
RSpec.describe WidgetsController, type: :controller do
|
4
4
|
describe "#new" do
|
5
5
|
it "should raise an exception" do
|
6
6
|
expect { get :new }.to raise_error(ZeroDivisionError)
|
@@ -1,9 +1,9 @@
|
|
1
1
|
require File.expand_path(File.dirname(__FILE__) + "/integration_helper")
|
2
2
|
|
3
|
-
RSpec.describe "exception handling", :
|
3
|
+
RSpec.describe "exception handling", type: :request do
|
4
4
|
before do
|
5
5
|
InfluxDB::Rails.configure do |config|
|
6
|
-
config.ignored_environments = %w
|
6
|
+
config.ignored_environments = %w[development]
|
7
7
|
config.instrumentation_enabled = false
|
8
8
|
end
|
9
9
|
end
|
@@ -26,16 +26,12 @@ RSpec.describe "exception handling", :type => :request do
|
|
26
26
|
it "should not make an HTTP call to the API" do
|
27
27
|
expect(InfluxDB::Rails.client).not_to receive(:write_point)
|
28
28
|
|
29
|
-
|
30
|
-
config.ignored_user_agents = %w{Googlebot}
|
31
|
-
end
|
32
|
-
|
29
|
+
# note: GoogleBot is ignored by default
|
33
30
|
if Rails::VERSION::MAJOR >= 5
|
34
|
-
get "/widgets/new", headers: { "HTTP_USER_AGENT" => "
|
31
|
+
get "/widgets/new", headers: { "HTTP_USER_AGENT" => "GoogleBot/2.1" }
|
35
32
|
else
|
36
|
-
get "/widgets/new", {},
|
33
|
+
get "/widgets/new", {}, "HTTP_USER_AGENT" => "GoogleBot/2.1"
|
37
34
|
end
|
38
35
|
end
|
39
36
|
end
|
40
37
|
end
|
41
|
-
|
@@ -1,10 +1,9 @@
|
|
1
1
|
require File.expand_path(File.dirname(__FILE__) + "/integration_helper")
|
2
2
|
|
3
|
-
RSpec.describe "collecting metrics through ActiveSupport::Notifications", :
|
3
|
+
RSpec.describe "collecting metrics through ActiveSupport::Notifications", type: :request do
|
4
4
|
before do
|
5
5
|
InfluxDB::Rails.configure do |config|
|
6
|
-
config.ignored_environments = %w
|
7
|
-
config.instrumentation_enabled = true
|
6
|
+
config.ignored_environments = %w[development]
|
8
7
|
end
|
9
8
|
end
|
10
9
|
|
@@ -20,4 +19,3 @@ RSpec.describe "collecting metrics through ActiveSupport::Notifications", :type
|
|
20
19
|
end
|
21
20
|
end
|
22
21
|
end
|
23
|
-
|
data/spec/spec_helper.rb
CHANGED
@@ -1,14 +1,14 @@
|
|
1
|
-
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__),
|
1
|
+
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), "..", "lib"))
|
2
2
|
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
3
3
|
ENV["RAILS_ENV"] ||= "test"
|
4
4
|
|
5
5
|
require "rails"
|
6
6
|
|
7
|
-
if Rails::VERSION::MAJOR < 4
|
8
|
-
raise "Sorry, influxdb-rails only supports Rails 4.
|
7
|
+
if Rails::VERSION::MAJOR < 4 || Rails::VERSION::MAJOR == 4 && Rails::VERSION::MINOR < 2
|
8
|
+
raise "Sorry, influxdb-rails only supports Rails 4.2 and higher."
|
9
9
|
end
|
10
10
|
|
11
|
-
require
|
11
|
+
require "bundler/setup"
|
12
12
|
Bundler.require
|
13
13
|
|
14
14
|
require "fakeweb"
|
@@ -16,13 +16,16 @@ FakeWeb.allow_net_connect = false
|
|
16
16
|
|
17
17
|
puts "Loading Rails v#{Rails.version}..."
|
18
18
|
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
end
|
19
|
+
require "support/rails#{Rails::VERSION::MAJOR}/app"
|
20
|
+
require "rspec/rails"
|
21
|
+
|
22
|
+
RSpec.configure do |config|
|
23
|
+
# use expect syntax
|
24
|
+
config.disable_monkey_patching!
|
26
25
|
|
27
|
-
#
|
28
|
-
|
26
|
+
# reset configuration for each spec
|
27
|
+
config.before :each do
|
28
|
+
InfluxDB::Rails.instance_variable_set :@configuration, nil
|
29
|
+
InfluxDB::Rails.configure(&:load_rails_defaults)
|
30
|
+
end
|
31
|
+
end
|
data/spec/support/rails4/app.rb
CHANGED
@@ -1,8 +1,8 @@
|
|
1
|
-
require
|
1
|
+
require "action_controller/railtie"
|
2
2
|
|
3
3
|
app = Class.new(Rails::Application)
|
4
|
-
app.config.secret_token =
|
5
|
-
app.config.session_store :cookie_store, :
|
4
|
+
app.config.secret_token = "1234567890abcdef1234567890abcdef"
|
5
|
+
app.config.session_store :cookie_store, key: "_myapp_session"
|
6
6
|
app.config.active_support.deprecation = :log
|
7
7
|
app.config.eager_load = false
|
8
8
|
app.config.root = File.dirname(__FILE__)
|
@@ -18,8 +18,13 @@ end
|
|
18
18
|
|
19
19
|
class ApplicationController < ActionController::Base; end
|
20
20
|
class WidgetsController < ApplicationController
|
21
|
-
def index
|
22
|
-
|
21
|
+
def index
|
22
|
+
render nothing: true
|
23
|
+
end
|
24
|
+
|
25
|
+
def new
|
26
|
+
1 / 0
|
27
|
+
end
|
23
28
|
end
|
24
29
|
|
25
30
|
Object.const_set(:ApplicationHelper, Module.new)
|
data/spec/support/rails5/app.rb
CHANGED
@@ -1,8 +1,9 @@
|
|
1
|
-
require
|
1
|
+
require "action_controller/railtie"
|
2
2
|
|
3
3
|
app = Class.new(Rails::Application)
|
4
|
-
app.config.
|
5
|
-
app.config.
|
4
|
+
app.config.secret_key_base = "1234567890abcdef1234567890abcdef"
|
5
|
+
app.config.secret_token = "1234567890abcdef1234567890abcdef"
|
6
|
+
app.config.session_store :cookie_store, key: "_myapp_session"
|
6
7
|
app.config.active_support.deprecation = :log
|
7
8
|
app.config.eager_load = false
|
8
9
|
app.config.root = File.dirname(__FILE__)
|
@@ -18,8 +19,13 @@ end
|
|
18
19
|
|
19
20
|
class ApplicationController < ActionController::Base; end
|
20
21
|
class WidgetsController < ApplicationController
|
21
|
-
def index
|
22
|
-
|
22
|
+
def index
|
23
|
+
head 200
|
24
|
+
end
|
25
|
+
|
26
|
+
def new
|
27
|
+
1 / 0
|
28
|
+
end
|
23
29
|
end
|
24
30
|
|
25
31
|
Object.const_set(:ApplicationHelper, Module.new)
|
data/spec/unit/backtrace_spec.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
require
|
1
|
+
require "spec_helper"
|
2
2
|
|
3
3
|
RSpec.describe InfluxDB::Rails::Backtrace do
|
4
4
|
before do
|
@@ -33,7 +33,6 @@ RSpec.describe InfluxDB::Rails::Backtrace do
|
|
33
33
|
context "nil backtrace" do
|
34
34
|
before do
|
35
35
|
@raw_backtrace = nil
|
36
|
-
|
37
36
|
@backtrace = InfluxDB::Rails::Backtrace.new(@raw_backtrace)
|
38
37
|
end
|
39
38
|
|
@@ -47,7 +46,6 @@ RSpec.describe InfluxDB::Rails::Backtrace do
|
|
47
46
|
expect(@backtrace.to_a.is_a?(Array)).to be_truthy
|
48
47
|
end
|
49
48
|
end
|
50
|
-
|
51
49
|
end
|
52
50
|
|
53
51
|
describe "backtrace filters" do
|
@@ -75,7 +73,7 @@ RSpec.describe InfluxDB::Rails::Backtrace do
|
|
75
73
|
|
76
74
|
it "should allow the addition of custom backtrace filters" do
|
77
75
|
InfluxDB::Rails.configure do |config|
|
78
|
-
config.backtrace_filters <<
|
76
|
+
config.backtrace_filters << ->(line) { line.gsub(/foo/, "F00") }
|
79
77
|
end
|
80
78
|
|
81
79
|
filtered_backtrace = InfluxDB::Rails::Backtrace.new(@raw_backtrace)
|
@@ -85,4 +83,3 @@ RSpec.describe InfluxDB::Rails::Backtrace do
|
|
85
83
|
end
|
86
84
|
end
|
87
85
|
end
|
88
|
-
|
@@ -1,4 +1,4 @@
|
|
1
|
-
require
|
1
|
+
require "spec_helper"
|
2
2
|
|
3
3
|
RSpec.describe InfluxDB::Rails::Configuration do
|
4
4
|
before do
|
@@ -7,12 +7,12 @@ RSpec.describe InfluxDB::Rails::Configuration do
|
|
7
7
|
|
8
8
|
describe "#ignore_user_agent?" do
|
9
9
|
it "should be true for user agents that have been set as ignorable" do
|
10
|
-
@configuration.ignored_user_agents = %w
|
10
|
+
@configuration.ignored_user_agents = %w[Googlebot]
|
11
11
|
expect(@configuration.ignore_user_agent?("Googlebot/2.1")).to be_truthy
|
12
12
|
end
|
13
13
|
|
14
14
|
it "should be false for user agents that have not been set as ignorable" do
|
15
|
-
@configuration.ignored_user_agents = %w
|
15
|
+
@configuration.ignored_user_agents = %w[Googlebot]
|
16
16
|
expect(@configuration.ignore_user_agent?("Mozilla/5.0")).to be_falsey
|
17
17
|
end
|
18
18
|
|
@@ -29,8 +29,6 @@ RSpec.describe InfluxDB::Rails::Configuration do
|
|
29
29
|
|
30
30
|
describe "#retry" do
|
31
31
|
it "defaults to nil" do
|
32
|
-
InfluxDB::Rails.configure do |config|
|
33
|
-
end
|
34
32
|
expect(InfluxDB::Rails.configuration.retry).to be_nil
|
35
33
|
end
|
36
34
|
|
@@ -44,8 +42,6 @@ RSpec.describe InfluxDB::Rails::Configuration do
|
|
44
42
|
|
45
43
|
describe "#open_timeout" do
|
46
44
|
it "defaults to 5" do
|
47
|
-
InfluxDB::Rails.configure do |config|
|
48
|
-
end
|
49
45
|
expect(InfluxDB::Rails.configuration.open_timeout).to eql(5)
|
50
46
|
end
|
51
47
|
|
@@ -59,8 +55,6 @@ RSpec.describe InfluxDB::Rails::Configuration do
|
|
59
55
|
|
60
56
|
describe "#read_timeout" do
|
61
57
|
it "defaults to 300" do
|
62
|
-
InfluxDB::Rails.configure do |config|
|
63
|
-
end
|
64
58
|
expect(InfluxDB::Rails.configuration.read_timeout).to eql(300)
|
65
59
|
end
|
66
60
|
|
@@ -74,8 +68,6 @@ RSpec.describe InfluxDB::Rails::Configuration do
|
|
74
68
|
|
75
69
|
describe "#max_delay" do
|
76
70
|
it "defaults to 30" do
|
77
|
-
InfluxDB::Rails.configure do |config|
|
78
|
-
end
|
79
71
|
expect(InfluxDB::Rails.configuration.max_delay).to eql(30)
|
80
72
|
end
|
81
73
|
|
@@ -89,16 +81,28 @@ RSpec.describe InfluxDB::Rails::Configuration do
|
|
89
81
|
|
90
82
|
describe "#time_precision" do
|
91
83
|
it "defaults to seconds" do
|
84
|
+
expect(InfluxDB::Rails.configuration.time_precision).to eql("s")
|
85
|
+
end
|
86
|
+
|
87
|
+
it "can be updated" do
|
92
88
|
InfluxDB::Rails.configure do |config|
|
89
|
+
config.time_precision = "ms"
|
93
90
|
end
|
94
|
-
expect(InfluxDB::Rails.configuration.time_precision).to eql(
|
91
|
+
expect(InfluxDB::Rails.configuration.time_precision).to eql("ms")
|
95
92
|
end
|
93
|
+
end
|
96
94
|
|
97
|
-
|
95
|
+
describe "#rails_app_name" do
|
96
|
+
it "defaults to nil" do
|
97
|
+
expect(InfluxDB::Rails.configuration.rails_app_name).to be(nil)
|
98
|
+
end
|
99
|
+
|
100
|
+
it "can be set to own name" do
|
98
101
|
InfluxDB::Rails.configure do |config|
|
99
|
-
config.
|
102
|
+
config.rails_app_name = "my-app"
|
100
103
|
end
|
101
|
-
|
104
|
+
|
105
|
+
expect(InfluxDB::Rails.configuration.rails_app_name).to eq("my-app")
|
102
106
|
end
|
103
107
|
end
|
104
108
|
end
|