dbg-rb 0.3.1 β 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +33 -19
- data/dbg_base2.png +0 -0
- data/inline/dbg_rb.rb +56 -7
- data/lbg_logs.png +0 -0
- data/lib/dbg-rb.rb +56 -7
- data/lib/dbg_rb/version.rb +1 -1
- data/spec/inline_spec.rb +103 -0
- data/spec/main_spec.rb +103 -0
- metadata +4 -3
- data/dbg_base.png +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 05a2b90f0904d6bfdbcb0a03099b305364cecdb9cd49a833e1d55338b9fb6c80
|
4
|
+
data.tar.gz: db531071fce82b46b52b12bc4b97e1b563acc38621fb83d191ef58bcdaa4b5b2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 12f8fd0a098e18b73d66fda695ecc87d99d9b73661a130c92866dfbf143380d71f2645ec8a7cc7e773f7bd4fa8d383af25625c853133fafd7d2d787e614c4342
|
7
|
+
data.tar.gz: 774daf99ccc4c44cf23e9c2c8188bbf0bf1fc760cbc1e37f5e8128cf14ffc17512e59bfdc65efedb83b1a28e85f3f2330bcf094db5c7c1cf91a77bc4bbe26378
|
data/README.md
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# dbg [](https://badge.fury.io/rb/dbg-rb) [](https://github.com/pawurb/dbg-rb/actions)
|
2
2
|
|
3
|
-

|
4
4
|
|
5
5
|
Because I wrote:
|
6
6
|
|
@@ -28,29 +28,19 @@ Gem adds a global `dbg` method that you can use for puts debugging:
|
|
28
28
|
require "dbg-rb"
|
29
29
|
|
30
30
|
dbg(User.last.id)
|
31
|
-
# [web/user_sessions_controller.rb:37] 1972
|
31
|
+
# [web/user_sessions_controller.rb:37] User.last.id = 1972
|
32
32
|
|
33
33
|
```
|
34
34
|
|
35
|
-
It appends a caller file
|
35
|
+
It appends a caller file, line info and source expression to the debug output.
|
36
36
|
|
37
|
-
You can use symbols to output local variable names together with their values:
|
38
|
-
|
39
|
-
```ruby
|
40
|
-
a = 1
|
41
|
-
b = 2
|
42
|
-
|
43
|
-
dbg(:a, :b)
|
44
|
-
# [models/user.rb:22] a = 1
|
45
|
-
# [models/user.rb:22] b = 2
|
46
|
-
```
|
47
37
|
|
48
38
|
Hash values are pretty printed:
|
49
39
|
|
50
40
|
```ruby
|
51
|
-
|
52
|
-
dbg(
|
53
|
-
# [web/users_controller.rb:10
|
41
|
+
|
42
|
+
dbg(User.last.as_json)
|
43
|
+
# [web/users_controller.rb:10] User.last.as_json = {
|
54
44
|
# "id": 160111,
|
55
45
|
# "team_id": 1,
|
56
46
|
# "pseudonym": "Anonymous-CBWE",
|
@@ -80,11 +70,10 @@ DbgRb.color_code = nil
|
|
80
70
|
```
|
81
71
|
|
82
72
|
```ruby
|
83
|
-
|
84
|
-
dbg("User last", :user)
|
73
|
+
dbg(User.last(2).map(&:as_json))
|
85
74
|
```
|
86
75
|
|
87
|
-

|
88
77
|
|
89
78
|
If it does not stand out enough, you can enable `dbg` highlighting:
|
90
79
|
|
@@ -97,6 +86,31 @@ DbgRb.highlight!("πππ£πΊππ§¨ππ€―π₯³ππ¦")
|
|
97
86
|
|
98
87
|

|
99
88
|
|
89
|
+
## Logs integration
|
90
|
+
|
91
|
+

|
92
|
+
|
93
|
+
Use `lbg` to send debug output through a logger instead of `stdio`:
|
94
|
+
|
95
|
+
```ruby
|
96
|
+
require "dbg-rb"
|
97
|
+
|
98
|
+
lbg(User.last.id)
|
99
|
+
# Sends to Rails.logger.debug: [web/user_sessions_controller.rb:37] User.last.id = 1972
|
100
|
+
```
|
101
|
+
|
102
|
+
The `lbg` method:
|
103
|
+
- Uses `Rails.logger` by default when Rails is available
|
104
|
+
- Falls back to regular `dbg` behavior if no logger is configured
|
105
|
+
- Uses `:debug` log level by default
|
106
|
+
|
107
|
+
You can configure a custom logger and log level:
|
108
|
+
|
109
|
+
```ruby
|
110
|
+
DbgRb.logger = MyLogger.new
|
111
|
+
DbgRb.log_level = :info
|
112
|
+
```
|
113
|
+
|
100
114
|
## Status
|
101
115
|
|
102
116
|
Contributions & ideas very welcome!
|
data/dbg_base2.png
ADDED
Binary file
|
data/inline/dbg_rb.rb
CHANGED
@@ -35,13 +35,27 @@ module DbgRb
|
|
35
35
|
Impl.highlight!(wrapper)
|
36
36
|
end
|
37
37
|
|
38
|
+
def self.logger=(val)
|
39
|
+
Impl.logger = val
|
40
|
+
end
|
41
|
+
|
42
|
+
def self.log_level=(val)
|
43
|
+
Impl.log_level = val
|
44
|
+
end
|
45
|
+
|
38
46
|
def self.dbg(*msgs)
|
39
47
|
Impl.new.dbg(*msgs)
|
40
48
|
end
|
41
49
|
|
50
|
+
def self.lbg(*msgs)
|
51
|
+
Impl.new.lbg(*msgs)
|
52
|
+
end
|
53
|
+
|
42
54
|
class Impl
|
43
55
|
@@color_code = nil
|
44
56
|
@@highlight = false
|
57
|
+
@@logger = defined?(Rails) ? Rails.logger : nil
|
58
|
+
@@log_level = :debug
|
45
59
|
|
46
60
|
def self.color_code=(val)
|
47
61
|
@@color_code = val
|
@@ -51,8 +65,16 @@ module DbgRb
|
|
51
65
|
@@highlight = wrapper
|
52
66
|
end
|
53
67
|
|
54
|
-
def
|
55
|
-
|
68
|
+
def self.logger=(val)
|
69
|
+
@@logger = val
|
70
|
+
end
|
71
|
+
|
72
|
+
def self.log_level=(val)
|
73
|
+
@@log_level = val
|
74
|
+
end
|
75
|
+
|
76
|
+
def dbg_base(value)
|
77
|
+
loc = caller_locations.first(4).last
|
56
78
|
source_file = if (path = loc.absolute_path)
|
57
79
|
path.split("/").last(2).join("/")
|
58
80
|
else
|
@@ -60,7 +82,7 @@ module DbgRb
|
|
60
82
|
end
|
61
83
|
|
62
84
|
file = if (path = loc.absolute_path)
|
63
|
-
path
|
85
|
+
path
|
64
86
|
else
|
65
87
|
nil
|
66
88
|
end
|
@@ -71,7 +93,11 @@ module DbgRb
|
|
71
93
|
File.open(file) do |f|
|
72
94
|
f.each_line.with_index do |line, i|
|
73
95
|
if i == loc.lineno - 1
|
74
|
-
splitby, remove_parantheses = if line.include?("
|
96
|
+
splitby, remove_parantheses = if line.include?("lbg(")
|
97
|
+
["lbg(", true]
|
98
|
+
elsif line.include?("lbg ")
|
99
|
+
["lbg ", false]
|
100
|
+
elsif line.include?("dbg(")
|
75
101
|
["dbg(", true]
|
76
102
|
else
|
77
103
|
["dbg ", false]
|
@@ -104,8 +130,20 @@ module DbgRb
|
|
104
130
|
if @@color_code != nil
|
105
131
|
output = colorize(output, @@color_code)
|
106
132
|
end
|
133
|
+
|
134
|
+
output
|
135
|
+
end
|
107
136
|
|
108
|
-
|
137
|
+
def dbg(value)
|
138
|
+
puts dbg_base(value)
|
139
|
+
end
|
140
|
+
|
141
|
+
def lbg(value)
|
142
|
+
if @@logger.nil?
|
143
|
+
puts dbg_base(value)
|
144
|
+
else
|
145
|
+
@@logger.send(@@log_level, dbg_base(value))
|
146
|
+
end
|
109
147
|
end
|
110
148
|
|
111
149
|
private
|
@@ -126,7 +164,7 @@ module DbgRb
|
|
126
164
|
dbg_inspect(val, quote_str: true)
|
127
165
|
end.then do |value|
|
128
166
|
if value.is_a?(String)
|
129
|
-
value.gsub("\"nil\"", "nil")
|
167
|
+
value.gsub("\"nil\"", "nil").gsub("\\", "")
|
130
168
|
else
|
131
169
|
value
|
132
170
|
end
|
@@ -139,8 +177,15 @@ module DbgRb
|
|
139
177
|
end
|
140
178
|
|
141
179
|
case obj
|
142
|
-
when Numeric
|
180
|
+
when Numeric
|
143
181
|
obj
|
182
|
+
when String
|
183
|
+
# Handle binary strings by showing their hex representation
|
184
|
+
if obj.encoding == Encoding::ASCII_8BIT
|
185
|
+
obj.bytes.map { |b| "\\x#{b.to_s(16).rjust(2, '0')}" }.join
|
186
|
+
else
|
187
|
+
obj
|
188
|
+
end
|
144
189
|
else
|
145
190
|
obj.inspect
|
146
191
|
end
|
@@ -152,4 +197,8 @@ def dbg(value)
|
|
152
197
|
DbgRb.dbg(value)
|
153
198
|
end
|
154
199
|
|
200
|
+
def lbg(value)
|
201
|
+
DbgRb.lbg(value)
|
202
|
+
end
|
203
|
+
|
155
204
|
DbgRb.color_code = 33 # yellow
|
data/lbg_logs.png
ADDED
Binary file
|
data/lib/dbg-rb.rb
CHANGED
@@ -11,13 +11,27 @@ module DbgRb
|
|
11
11
|
Impl.highlight!(wrapper)
|
12
12
|
end
|
13
13
|
|
14
|
+
def self.logger=(val)
|
15
|
+
Impl.logger = val
|
16
|
+
end
|
17
|
+
|
18
|
+
def self.log_level=(val)
|
19
|
+
Impl.log_level = val
|
20
|
+
end
|
21
|
+
|
14
22
|
def self.dbg(*msgs)
|
15
23
|
Impl.new.dbg(*msgs)
|
16
24
|
end
|
17
25
|
|
26
|
+
def self.lbg(*msgs)
|
27
|
+
Impl.new.lbg(*msgs)
|
28
|
+
end
|
29
|
+
|
18
30
|
class Impl
|
19
31
|
@@color_code = nil
|
20
32
|
@@highlight = false
|
33
|
+
@@logger = defined?(Rails) ? Rails.logger : nil
|
34
|
+
@@log_level = :debug
|
21
35
|
|
22
36
|
def self.color_code=(val)
|
23
37
|
@@color_code = val
|
@@ -27,8 +41,16 @@ module DbgRb
|
|
27
41
|
@@highlight = wrapper
|
28
42
|
end
|
29
43
|
|
30
|
-
def
|
31
|
-
|
44
|
+
def self.logger=(val)
|
45
|
+
@@logger = val
|
46
|
+
end
|
47
|
+
|
48
|
+
def self.log_level=(val)
|
49
|
+
@@log_level = val
|
50
|
+
end
|
51
|
+
|
52
|
+
def dbg_base(value)
|
53
|
+
loc = caller_locations.first(4).last
|
32
54
|
source_file = if (path = loc.absolute_path)
|
33
55
|
path.split("/").last(2).join("/")
|
34
56
|
else
|
@@ -36,7 +58,7 @@ module DbgRb
|
|
36
58
|
end
|
37
59
|
|
38
60
|
file = if (path = loc.absolute_path)
|
39
|
-
path
|
61
|
+
path
|
40
62
|
else
|
41
63
|
nil
|
42
64
|
end
|
@@ -47,7 +69,11 @@ module DbgRb
|
|
47
69
|
File.open(file) do |f|
|
48
70
|
f.each_line.with_index do |line, i|
|
49
71
|
if i == loc.lineno - 1
|
50
|
-
splitby, remove_parantheses = if line.include?("
|
72
|
+
splitby, remove_parantheses = if line.include?("lbg(")
|
73
|
+
["lbg(", true]
|
74
|
+
elsif line.include?("lbg ")
|
75
|
+
["lbg ", false]
|
76
|
+
elsif line.include?("dbg(")
|
51
77
|
["dbg(", true]
|
52
78
|
else
|
53
79
|
["dbg ", false]
|
@@ -80,8 +106,20 @@ module DbgRb
|
|
80
106
|
if @@color_code != nil
|
81
107
|
output = colorize(output, @@color_code)
|
82
108
|
end
|
109
|
+
|
110
|
+
output
|
111
|
+
end
|
83
112
|
|
84
|
-
|
113
|
+
def dbg(value)
|
114
|
+
puts dbg_base(value)
|
115
|
+
end
|
116
|
+
|
117
|
+
def lbg(value)
|
118
|
+
if @@logger.nil?
|
119
|
+
puts dbg_base(value)
|
120
|
+
else
|
121
|
+
@@logger.send(@@log_level, dbg_base(value))
|
122
|
+
end
|
85
123
|
end
|
86
124
|
|
87
125
|
private
|
@@ -102,7 +140,7 @@ module DbgRb
|
|
102
140
|
dbg_inspect(val, quote_str: true)
|
103
141
|
end.then do |value|
|
104
142
|
if value.is_a?(String)
|
105
|
-
value.gsub("\"nil\"", "nil")
|
143
|
+
value.gsub("\"nil\"", "nil").gsub("\\", "")
|
106
144
|
else
|
107
145
|
value
|
108
146
|
end
|
@@ -115,8 +153,15 @@ module DbgRb
|
|
115
153
|
end
|
116
154
|
|
117
155
|
case obj
|
118
|
-
when Numeric
|
156
|
+
when Numeric
|
119
157
|
obj
|
158
|
+
when String
|
159
|
+
# Handle binary strings by showing their hex representation
|
160
|
+
if obj.encoding == Encoding::ASCII_8BIT
|
161
|
+
obj.bytes.map { |b| "\\x#{b.to_s(16).rjust(2, '0')}" }.join
|
162
|
+
else
|
163
|
+
obj
|
164
|
+
end
|
120
165
|
else
|
121
166
|
obj.inspect
|
122
167
|
end
|
@@ -128,4 +173,8 @@ def dbg(value)
|
|
128
173
|
DbgRb.dbg(value)
|
129
174
|
end
|
130
175
|
|
176
|
+
def lbg(value)
|
177
|
+
DbgRb.lbg(value)
|
178
|
+
end
|
179
|
+
|
131
180
|
DbgRb.color_code = 33 # yellow
|
data/lib/dbg_rb/version.rb
CHANGED
data/spec/inline_spec.rb
CHANGED
@@ -116,4 +116,107 @@ describe DbgRb do
|
|
116
116
|
dbg [1, 2, 3].reduce(0) { |i, agg| agg + i }
|
117
117
|
end.to output("[spec/inline_spec.rb:116] [1, 2, 3].reduce(0) { |i, agg| agg + i } = 6\n").to_stdout
|
118
118
|
end
|
119
|
+
|
120
|
+
it "binary input" do
|
121
|
+
random_bytes = Random.new.bytes(8)
|
122
|
+
|
123
|
+
expect do
|
124
|
+
dbg(random_bytes)
|
125
|
+
end.not_to raise_error
|
126
|
+
end
|
127
|
+
|
128
|
+
describe "lbg" do
|
129
|
+
let(:mock_logger) do
|
130
|
+
Class.new do
|
131
|
+
attr_reader :logged_messages, :logged_levels
|
132
|
+
|
133
|
+
def initialize
|
134
|
+
@logged_messages = []
|
135
|
+
@logged_levels = []
|
136
|
+
end
|
137
|
+
|
138
|
+
def debug(message)
|
139
|
+
@logged_levels << :debug
|
140
|
+
@logged_messages << message
|
141
|
+
end
|
142
|
+
|
143
|
+
def info(message)
|
144
|
+
@logged_levels << :info
|
145
|
+
@logged_messages << message
|
146
|
+
end
|
147
|
+
|
148
|
+
def warn(message)
|
149
|
+
@logged_levels << :warn
|
150
|
+
@logged_messages << message
|
151
|
+
end
|
152
|
+
|
153
|
+
def error(message)
|
154
|
+
@logged_levels << :error
|
155
|
+
@logged_messages << message
|
156
|
+
end
|
157
|
+
end.new
|
158
|
+
end
|
159
|
+
|
160
|
+
before do
|
161
|
+
DbgRb.logger = nil
|
162
|
+
DbgRb.log_level = :debug
|
163
|
+
end
|
164
|
+
|
165
|
+
it "falls back to dbg when no logger is configured" do
|
166
|
+
expect do
|
167
|
+
lbg("test")
|
168
|
+
end.to output("[spec/inline_spec.rb:167] \"test\"\n").to_stdout
|
169
|
+
end
|
170
|
+
|
171
|
+
it "uses logger when configured" do
|
172
|
+
DbgRb.logger = mock_logger
|
173
|
+
|
174
|
+
lbg("test message")
|
175
|
+
|
176
|
+
expect(mock_logger.logged_messages).to eq(["[spec/inline_spec.rb:174] \"test message\""])
|
177
|
+
expect(mock_logger.logged_levels).to eq([:debug])
|
178
|
+
end
|
179
|
+
|
180
|
+
it "uses custom log level" do
|
181
|
+
DbgRb.logger = mock_logger
|
182
|
+
DbgRb.log_level = :info
|
183
|
+
|
184
|
+
lbg("test message")
|
185
|
+
|
186
|
+
expect(mock_logger.logged_messages).to eq(["[spec/inline_spec.rb:184] \"test message\""])
|
187
|
+
expect(mock_logger.logged_levels).to eq([:info])
|
188
|
+
end
|
189
|
+
|
190
|
+
it "logs variables with logger" do
|
191
|
+
DbgRb.logger = mock_logger
|
192
|
+
test_var = 42
|
193
|
+
|
194
|
+
lbg(test_var)
|
195
|
+
|
196
|
+
expect(mock_logger.logged_messages).to eq(["[spec/inline_spec.rb:194] test_var = 42"])
|
197
|
+
expect(mock_logger.logged_levels).to eq([:debug])
|
198
|
+
end
|
199
|
+
|
200
|
+
it "logs complex objects with logger" do
|
201
|
+
DbgRb.logger = mock_logger
|
202
|
+
test_hash = { a: 1, b: "test" }
|
203
|
+
|
204
|
+
lbg(test_hash)
|
205
|
+
|
206
|
+
expected_message = "[spec/inline_spec.rb:204] test_hash = {\n \"a\": 1,\n \"b\": \"test\"\n}"
|
207
|
+
expect(mock_logger.logged_messages).to eq([expected_message])
|
208
|
+
expect(mock_logger.logged_levels).to eq([:debug])
|
209
|
+
end
|
210
|
+
|
211
|
+
it "respects color and highlight settings with logger" do
|
212
|
+
DbgRb.logger = mock_logger
|
213
|
+
DbgRb.color_code = 31
|
214
|
+
DbgRb.highlight!("!!!")
|
215
|
+
|
216
|
+
lbg("styled")
|
217
|
+
|
218
|
+
expected_message = "\e[31m!!!\n[spec/inline_spec.rb:216] \"styled\"\n!!!\e[0m"
|
219
|
+
expect(mock_logger.logged_messages).to eq([expected_message])
|
220
|
+
end
|
221
|
+
end
|
119
222
|
end
|
data/spec/main_spec.rb
CHANGED
@@ -116,4 +116,107 @@ describe DbgRb do
|
|
116
116
|
dbg [1, 2, 3].reduce(0) { |i, agg| agg + i }
|
117
117
|
end.to output("[spec/main_spec.rb:116] [1, 2, 3].reduce(0) { |i, agg| agg + i } = 6\n").to_stdout
|
118
118
|
end
|
119
|
+
|
120
|
+
it "binary input" do
|
121
|
+
random_bytes = Random.new.bytes(8)
|
122
|
+
|
123
|
+
expect do
|
124
|
+
dbg(random_bytes)
|
125
|
+
end.not_to raise_error
|
126
|
+
end
|
127
|
+
|
128
|
+
describe "lbg" do
|
129
|
+
let(:mock_logger) do
|
130
|
+
Class.new do
|
131
|
+
attr_reader :logged_messages, :logged_levels
|
132
|
+
|
133
|
+
def initialize
|
134
|
+
@logged_messages = []
|
135
|
+
@logged_levels = []
|
136
|
+
end
|
137
|
+
|
138
|
+
def debug(message)
|
139
|
+
@logged_levels << :debug
|
140
|
+
@logged_messages << message
|
141
|
+
end
|
142
|
+
|
143
|
+
def info(message)
|
144
|
+
@logged_levels << :info
|
145
|
+
@logged_messages << message
|
146
|
+
end
|
147
|
+
|
148
|
+
def warn(message)
|
149
|
+
@logged_levels << :warn
|
150
|
+
@logged_messages << message
|
151
|
+
end
|
152
|
+
|
153
|
+
def error(message)
|
154
|
+
@logged_levels << :error
|
155
|
+
@logged_messages << message
|
156
|
+
end
|
157
|
+
end.new
|
158
|
+
end
|
159
|
+
|
160
|
+
before do
|
161
|
+
DbgRb.logger = nil
|
162
|
+
DbgRb.log_level = :debug
|
163
|
+
end
|
164
|
+
|
165
|
+
it "falls back to dbg when no logger is configured" do
|
166
|
+
expect do
|
167
|
+
lbg("test")
|
168
|
+
end.to output("[spec/main_spec.rb:167] \"test\"\n").to_stdout
|
169
|
+
end
|
170
|
+
|
171
|
+
it "uses logger when configured" do
|
172
|
+
DbgRb.logger = mock_logger
|
173
|
+
|
174
|
+
lbg("test message")
|
175
|
+
|
176
|
+
expect(mock_logger.logged_messages).to eq(["[spec/main_spec.rb:174] \"test message\""])
|
177
|
+
expect(mock_logger.logged_levels).to eq([:debug])
|
178
|
+
end
|
179
|
+
|
180
|
+
it "uses custom log level" do
|
181
|
+
DbgRb.logger = mock_logger
|
182
|
+
DbgRb.log_level = :info
|
183
|
+
|
184
|
+
lbg("test message")
|
185
|
+
|
186
|
+
expect(mock_logger.logged_messages).to eq(["[spec/main_spec.rb:184] \"test message\""])
|
187
|
+
expect(mock_logger.logged_levels).to eq([:info])
|
188
|
+
end
|
189
|
+
|
190
|
+
it "logs variables with logger" do
|
191
|
+
DbgRb.logger = mock_logger
|
192
|
+
test_var = 42
|
193
|
+
|
194
|
+
lbg(test_var)
|
195
|
+
|
196
|
+
expect(mock_logger.logged_messages).to eq(["[spec/main_spec.rb:194] test_var = 42"])
|
197
|
+
expect(mock_logger.logged_levels).to eq([:debug])
|
198
|
+
end
|
199
|
+
|
200
|
+
it "logs complex objects with logger" do
|
201
|
+
DbgRb.logger = mock_logger
|
202
|
+
test_hash = { a: 1, b: "test" }
|
203
|
+
|
204
|
+
lbg(test_hash)
|
205
|
+
|
206
|
+
expected_message = "[spec/main_spec.rb:204] test_hash = {\n \"a\": 1,\n \"b\": \"test\"\n}"
|
207
|
+
expect(mock_logger.logged_messages).to eq([expected_message])
|
208
|
+
expect(mock_logger.logged_levels).to eq([:debug])
|
209
|
+
end
|
210
|
+
|
211
|
+
it "respects color and highlight settings with logger" do
|
212
|
+
DbgRb.logger = mock_logger
|
213
|
+
DbgRb.color_code = 31
|
214
|
+
DbgRb.highlight!("!!!")
|
215
|
+
|
216
|
+
lbg("styled")
|
217
|
+
|
218
|
+
expected_message = "\e[31m!!!\n[spec/main_spec.rb:216] \"styled\"\n!!!\e[0m"
|
219
|
+
expect(mock_logger.logged_messages).to eq([expected_message])
|
220
|
+
end
|
221
|
+
end
|
119
222
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dbg-rb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- pawurb
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-
|
11
|
+
date: 2025-08-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: json
|
@@ -95,10 +95,11 @@ files:
|
|
95
95
|
- README.md
|
96
96
|
- Rakefile
|
97
97
|
- dbg-rb.gemspec
|
98
|
-
-
|
98
|
+
- dbg_base2.png
|
99
99
|
- dbg_emoji.png
|
100
100
|
- inline/dbg_rb.rb
|
101
101
|
- inline/sync.rb
|
102
|
+
- lbg_logs.png
|
102
103
|
- lib/dbg-rb.rb
|
103
104
|
- lib/dbg_rb/version.rb
|
104
105
|
- spec/inline_spec.rb
|
data/dbg_base.png
DELETED
Binary file
|