31 lines
1,012 B
Ruby
31 lines
1,012 B
Ruby
require "rails_helper"
|
|
|
|
describe Honeybadger do
|
|
MESSAGE_FINGERPRINTS.each do |error_key, fingerprint|
|
|
include_examples "#sets_correct_honeybadger_fingerprint", error_key, fingerprint
|
|
end
|
|
|
|
context "when configuration is loaded" do
|
|
it "ignores requested exceptions" do
|
|
exceptions_to_ignore = [
|
|
ActiveRecord::QueryCanceled,
|
|
ActiveRecord::RecordNotFound,
|
|
Pundit::NotAuthorizedError,
|
|
RateLimitChecker::LimitReached,
|
|
]
|
|
|
|
ignored_exceptions = described_class.config.ruby[:"exceptions.ignore"]
|
|
expect(exceptions_to_ignore.all? { |e| ignored_exceptions.include?(e) }).to be(true)
|
|
end
|
|
end
|
|
|
|
context "when error is raised from an internal route" do
|
|
it "sets fingerprint to internal" do
|
|
notice = Honeybadger::Notice.new(
|
|
described_class.config, component: "internal/feedback_messages"
|
|
)
|
|
described_class.config.before_notify_hooks.first.call(notice)
|
|
expect(notice.fingerprint).to eq("internal")
|
|
end
|
|
end
|
|
end
|