grape-slack-bot 1.2.0 → 1.2.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f84c93d79a89045d58deda55e64382c8ef74daf4975e0f47732b480c08619020
4
- data.tar.gz: 6f3e952d9a8f85e48de8f045aab1c35f0d69e9ac39b8328c240f38c77c578ad0
3
+ metadata.gz: 34be79021e713fec3adb16eaf1006303d01fb3e5da025daba80aa28ee6400bd8
4
+ data.tar.gz: 7c978813cafc6cb78c97d8db3001e90a9f5961eac73269e0c748e0b4fedcebc5
5
5
  SHA512:
6
- metadata.gz: 458e378569349642ecf2433fd573d3ad40ef69def84a6253206ff5bcef2b9d983c24b0d1e53a30887de7a8203dcf733ba868bbbbc9b4e215ded1f71487c3dd12
7
- data.tar.gz: dd5ef3106d1a1255cb788bef313d905ca986133bc5b3b3e53166c70b9727f8d3b996cce595f724e80b9d08ec4338ca91fbedcf135945878c01a61d32872375ef
6
+ metadata.gz: 1c55b60b6ea73f8528daee36229b9556f8c1fbe885caebd135181d561ed73629e5ebe4784ff2e7cdb9f3d581acc758db493112571f1d0c0eea8824e1613bd6ee
7
+ data.tar.gz: ed3c34753a2affe1dc01031ebc43af4fd5dea85279cf09cab6272893f81930f5099de57716dbf2cd0f4d5a63166175721bfe657234ead03ba094186f62f8babf
data/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ # 1.2.1
2
+
3
+ * Extract `SlackBot::Logger` to separate file
4
+
1
5
  # 1.2.0
2
6
 
3
7
  * Remove `Rails.logger` dependency, make logger configurable
@@ -1,9 +1,4 @@
1
1
  module SlackBot
2
- class Logger
3
- def info(*args, **kwargs)
4
- puts args, kwargs
5
- end
6
- end
7
2
  class DevConsole
8
3
  def self.enabled=(value)
9
4
  @enabled = value
@@ -0,0 +1,8 @@
1
+ module SlackBot
2
+ class Logger
3
+ def info(*args, **kwargs)
4
+ puts args.inspect if args.any?
5
+ puts kwargs.inspect if kwargs.any?
6
+ end
7
+ end
8
+ end
data/lib/slack_bot.rb CHANGED
@@ -1,3 +1,4 @@
1
+ require 'slack_bot/logger'
1
2
  require 'slack_bot/dev_console'
2
3
 
3
4
  require 'slack_bot/config'
@@ -21,5 +22,5 @@ require 'slack_bot/pager'
21
22
  require 'slack_bot/grape_extension'
22
23
 
23
24
  module SlackBot
24
- VERSION = '1.2.0'.freeze
25
+ VERSION = '1.2.1'.freeze
25
26
  end
@@ -1,50 +1,3 @@
1
- module SlackBot
2
- class Logger
3
- def info(*args, **kwargs)
4
- puts args, kwargs
5
- end
6
- end
7
- class DevConsole
8
- def self.enabled=(value)
9
- @enabled = value
10
- end
11
-
12
- def self.enabled?
13
- @enabled
14
- end
15
-
16
- def self.logger=(value)
17
- @logger = value
18
- end
19
-
20
- def self.logger
21
- @logger ||= Logger.new
22
- end
23
-
24
- def self.log(message = nil, &block)
25
- return unless enabled?
26
-
27
- message = yield if block_given?
28
- logger.info(message)
29
- end
30
-
31
- def self.log_input(message = nil, &block)
32
- message = yield if block_given?
33
- log(">>> #{message}")
34
- end
35
-
36
- def self.log_output(message = nil, &block)
37
- message = yield if block_given?
38
- log("<<< #{message}")
39
- end
40
-
41
- def self.log_check(message = nil, &block)
42
- message = yield if block_given?
43
- log("!!! #{message}")
44
- end
45
- end
46
- end
47
-
48
1
  require 'spec_helper'
49
2
 
50
3
  describe SlackBot::DevConsole do
@@ -85,4 +38,58 @@ describe SlackBot::DevConsole do
85
38
  end
86
39
  end
87
40
  end
41
+
42
+ describe '.log_input' do
43
+ context 'when enabled' do
44
+ before { described_class.enabled = true }
45
+ it 'logs the message' do
46
+ expect(described_class.logger).to receive(:info).with('>>> test')
47
+ described_class.log_input('test')
48
+ end
49
+ end
50
+
51
+ context 'when disabled' do
52
+ before { described_class.enabled = false }
53
+ it 'does not log the message' do
54
+ expect(described_class.logger).not_to receive(:info)
55
+ described_class.log_input('test')
56
+ end
57
+ end
58
+ end
59
+
60
+ describe '.log_output' do
61
+ context 'when enabled' do
62
+ before { described_class.enabled = true }
63
+ it 'logs the message' do
64
+ expect(described_class.logger).to receive(:info).with('<<< test')
65
+ described_class.log_output('test')
66
+ end
67
+ end
68
+
69
+ context 'when disabled' do
70
+ before { described_class.enabled = false }
71
+ it 'does not log the message' do
72
+ expect(described_class.logger).not_to receive(:info)
73
+ described_class.log_output('test')
74
+ end
75
+ end
76
+ end
77
+
78
+ describe '.log_check' do
79
+ context 'when enabled' do
80
+ before { described_class.enabled = true }
81
+ it 'logs the message' do
82
+ expect(described_class.logger).to receive(:info).with('!!! test')
83
+ described_class.log_check('test')
84
+ end
85
+ end
86
+
87
+ context 'when disabled' do
88
+ before { described_class.enabled = false }
89
+ it 'does not log the message' do
90
+ expect(described_class.logger).not_to receive(:info)
91
+ described_class.log_check('test')
92
+ end
93
+ end
94
+ end
88
95
  end
@@ -0,0 +1,13 @@
1
+ require 'spec_helper'
2
+
3
+ describe SlackBot::Logger do
4
+ describe '#info' do
5
+ it 'prints the args' do
6
+ expect { subject.info('test') }.to output(%(["test"]\n)).to_stdout
7
+ end
8
+
9
+ it 'prints the kwargs' do
10
+ expect { subject.info(test: 'test') }.to output(%({:test=>"test"}\n)).to_stdout
11
+ end
12
+ end
13
+ end
@@ -1,5 +1,51 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe SlackBot::Pager do
4
+ let(:args) do
5
+ instance_double(SlackBot::Args)
6
+ end
7
+ before do
8
+ allow(args).to receive(:[]).with(:page).and_return(1)
9
+ allow(args).to receive(:[]).with(:per_page).and_return(10)
10
+ end
4
11
 
12
+ describe '#total_count' do
13
+ it 'returns the count of the source cursor' do
14
+ source_cursor = double(count: 10)
15
+ pager = described_class.new(source_cursor, args: args)
16
+ expect(pager.total_count).to eq(10)
17
+ end
18
+ end
19
+
20
+ describe '#pages_count' do
21
+ it 'returns the count of the source cursor divided by the limit' do
22
+ source_cursor = double(count: 10)
23
+ pager = described_class.new(source_cursor, args: args, limit: 5)
24
+ expect(pager.pages_count).to eq(2)
25
+ end
26
+
27
+ it 'returns the count of the source cursor divided by the limit' do
28
+ source_cursor = double(count: 11)
29
+ pager = described_class.new(source_cursor, args: args, limit: 5)
30
+ expect(pager.pages_count).to eq(3)
31
+ end
32
+ end
33
+
34
+ describe '#offset' do
35
+ it 'returns the offset based on the page and limit' do
36
+ source_cursor = double(count: 10)
37
+ pager = described_class.new(source_cursor, args: args, limit: 5, page: 2)
38
+ expect(pager.offset).to eq(5)
39
+ end
40
+ end
41
+
42
+ describe '#cursor' do
43
+ it 'returns the cursor with the limit and offset' do
44
+ source_cursor = double(count: 10)
45
+ expect(source_cursor).to receive(:limit).with(5).and_return(source_cursor)
46
+ expect(source_cursor).to receive(:offset).with(5).and_return(source_cursor)
47
+ pager = described_class.new(source_cursor, args: args, limit: 5, page: 2)
48
+ expect(pager.cursor).to eq(source_cursor)
49
+ end
50
+ end
5
51
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: grape-slack-bot
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrei Makarov
@@ -174,6 +174,7 @@ files:
174
174
  - lib/slack_bot/event.rb
175
175
  - lib/slack_bot/grape_extension.rb
176
176
  - lib/slack_bot/interaction.rb
177
+ - lib/slack_bot/logger.rb
177
178
  - lib/slack_bot/menu_options.rb
178
179
  - lib/slack_bot/pager.rb
179
180
  - lib/slack_bot/view.rb
@@ -186,6 +187,7 @@ files:
186
187
  - spec/slack_bot/event_spec.rb
187
188
  - spec/slack_bot/grape_extension_spec.rb
188
189
  - spec/slack_bot/interaction_spec.rb
190
+ - spec/slack_bot/logger_spec.rb
189
191
  - spec/slack_bot/menu_options_spec.rb
190
192
  - spec/slack_bot/pager_spec.rb
191
193
  - spec/slack_bot/view_spec.rb
@@ -228,6 +230,7 @@ test_files:
228
230
  - spec/slack_bot/event_spec.rb
229
231
  - spec/slack_bot/grape_extension_spec.rb
230
232
  - spec/slack_bot/interaction_spec.rb
233
+ - spec/slack_bot/logger_spec.rb
231
234
  - spec/slack_bot/menu_options_spec.rb
232
235
  - spec/slack_bot/pager_spec.rb
233
236
  - spec/slack_bot/view_spec.rb