Skip to content

Commit 2e7bd10

Browse files
committed
Isolate sentry logger and std lib logger specs
1 parent d20494e commit 2e7bd10

File tree

2 files changed

+30
-3
lines changed

2 files changed

+30
-3
lines changed

sentry-ruby/spec/sentry/breadcrumb/sentry_logger_spec.rb renamed to sentry-ruby/spec/isolated/sentry_logger_spec.rb

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@
44
before do
55
perform_basic_setup do |config|
66
config.breadcrumbs_logger = [:sentry_logger]
7+
config.enable_logs = true
8+
config.max_log_events = 1
9+
config.enabled_patches = [:logger]
710
end
811
end
912

@@ -100,4 +103,22 @@
100103
end
101104
end
102105
end
106+
107+
it "does not conflict with :logger patch" do
108+
logger = ::Logger.new(nil)
109+
110+
logger.info("Hello World")
111+
112+
expect(sentry_logs).to_not be_empty
113+
114+
log_event = sentry_logs.last
115+
116+
expect(log_event[:level]).to eql("info")
117+
expect(log_event[:body]).to eql("Hello World")
118+
119+
breadcrumb = breadcrumbs.peek
120+
121+
expect(breadcrumb.level).to eq("info")
122+
expect(breadcrumb.message).to eq("Hello World")
123+
end
103124
end

sentry-ruby/spec/sentry/std_lib_logger_spec.rb renamed to sentry-ruby/spec/isolated/std_lib_logger_spec.rb

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
# frozen_string_literal: true
22

3+
SimpleCov.command_name "StdLibLogger"
4+
35
RSpec.describe Sentry::StdLibLogger do
4-
let(:logger) { ::Logger.new(IO::NULL) }
6+
let(:logger) { ::Logger.new($stdout) }
57

68
context "when enable_logs is set to true but logger patch is not enabled" do
79
before do
@@ -11,7 +13,9 @@
1113
end
1214

1315
it "does not send log using stdlib logger" do
14-
logger.send(:info, "Hello World")
16+
expect {
17+
logger.send(:info, "Hello World")
18+
}.to output(/Hello World/).to_stdout
1519

1620
expect(sentry_logs).to be_empty
1721
end
@@ -29,7 +33,9 @@
2933
["info", "warn", "error", "fatal"].each do |level|
3034
describe "##{level}" do
3135
it "send logs using stdlib logger" do
32-
logger.send(level, "Hello World")
36+
expect {
37+
logger.send(level, "Hello World")
38+
}.to output(/Hello World/).to_stdout
3339

3440
expect(sentry_logs).to_not be_empty
3541

0 commit comments

Comments
 (0)