slack-ruby-client 0.5.4 → 0.6.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/.rubocop_todo.yml +17 -14
- data/CHANGELOG.md +7 -0
- data/CONTRIBUTING.md +2 -2
- data/Gemfile +1 -0
- data/README.md +32 -18
- data/Rakefile +4 -1
- data/UPGRADING.md +41 -3
- data/bin/commands.rb +1 -1
- data/bin/commands/api.rb +1 -1
- data/bin/commands/auth.rb +1 -1
- data/bin/commands/channels.rb +3 -3
- data/bin/commands/chat.rb +1 -1
- data/bin/commands/dnd.rb +1 -1
- data/bin/commands/emoji.rb +1 -1
- data/bin/commands/files.rb +2 -1
- data/bin/commands/groups.rb +1 -1
- data/bin/commands/im.rb +1 -1
- data/bin/commands/mpim.rb +1 -1
- data/bin/commands/oauth.rb +1 -1
- data/bin/commands/pins.rb +1 -1
- data/bin/commands/reactions.rb +1 -1
- data/bin/commands/rtm.rb +1 -1
- data/bin/commands/search.rb +1 -1
- data/bin/commands/stars.rb +1 -1
- data/bin/commands/team.rb +1 -1
- data/bin/commands/usergroups.rb +1 -1
- data/bin/commands/users.rb +10 -1
- data/examples/hi_real_time/hi.rb +5 -5
- data/examples/hi_real_time_and_web/hi.rb +4 -4
- data/examples/hi_real_time_async/hi.rb +5 -5
- data/lib/slack-ruby-client.rb +10 -0
- data/lib/slack/messages/message.rb +9 -0
- data/lib/slack/real_time/api/schema/event.json +22 -0
- data/lib/slack/real_time/api/templates/event_handler.erb +18 -0
- data/lib/slack/real_time/api/templates/event_handlers.erb +5 -0
- data/lib/slack/real_time/client.rb +31 -9
- data/lib/slack/real_time/config.rb +3 -1
- data/lib/slack/real_time/event_handlers.rb +66 -0
- data/lib/slack/real_time/event_handlers/accounts_changed.rb +18 -0
- data/lib/slack/real_time/event_handlers/bot_added.rb +16 -0
- data/lib/slack/real_time/event_handlers/bot_changed.rb +17 -0
- data/lib/slack/real_time/event_handlers/channel_archive.rb +17 -0
- data/lib/slack/real_time/event_handlers/channel_created.rb +17 -0
- data/lib/slack/real_time/event_handlers/channel_deleted.rb +16 -0
- data/lib/slack/real_time/event_handlers/channel_history_changed.rb +18 -0
- data/lib/slack/real_time/event_handlers/channel_joined.rb +22 -0
- data/lib/slack/real_time/event_handlers/channel_left.rb +17 -0
- data/lib/slack/real_time/event_handlers/channel_marked.rb +18 -0
- data/lib/slack/real_time/event_handlers/channel_rename.rb +17 -0
- data/lib/slack/real_time/event_handlers/channel_unarchive.rb +17 -0
- data/lib/slack/real_time/event_handlers/commands_changed.rb +18 -0
- data/lib/slack/real_time/event_handlers/dnd_updated.rb +18 -0
- data/lib/slack/real_time/event_handlers/dnd_updated_user.rb +18 -0
- data/lib/slack/real_time/event_handlers/email_domain_changed.rb +16 -0
- data/lib/slack/real_time/event_handlers/emoji_changed.rb +18 -0
- data/lib/slack/real_time/event_handlers/file_change.rb +18 -0
- data/lib/slack/real_time/event_handlers/file_comment_added.rb +18 -0
- data/lib/slack/real_time/event_handlers/file_comment_deleted.rb +18 -0
- data/lib/slack/real_time/event_handlers/file_comment_edited.rb +18 -0
- data/lib/slack/real_time/event_handlers/file_created.rb +18 -0
- data/lib/slack/real_time/event_handlers/file_deleted.rb +18 -0
- data/lib/slack/real_time/event_handlers/file_private.rb +18 -0
- data/lib/slack/real_time/event_handlers/file_public.rb +18 -0
- data/lib/slack/real_time/event_handlers/file_shared.rb +18 -0
- data/lib/slack/real_time/event_handlers/file_unshared.rb +18 -0
- data/lib/slack/real_time/event_handlers/group_archive.rb +17 -0
- data/lib/slack/real_time/event_handlers/group_close.rb +16 -0
- data/lib/slack/real_time/event_handlers/group_history_changed.rb +18 -0
- data/lib/slack/real_time/event_handlers/group_joined.rb +16 -0
- data/lib/slack/real_time/event_handlers/group_left.rb +17 -0
- data/lib/slack/real_time/event_handlers/group_marked.rb +18 -0
- data/lib/slack/real_time/event_handlers/group_open.rb +16 -0
- data/lib/slack/real_time/event_handlers/group_rename.rb +17 -0
- data/lib/slack/real_time/event_handlers/group_unarchive.rb +17 -0
- data/lib/slack/real_time/event_handlers/im_close.rb +16 -0
- data/lib/slack/real_time/event_handlers/im_created.rb +16 -0
- data/lib/slack/real_time/event_handlers/im_history_changed.rb +18 -0
- data/lib/slack/real_time/event_handlers/im_marked.rb +18 -0
- data/lib/slack/real_time/event_handlers/im_open.rb +16 -0
- data/lib/slack/real_time/event_handlers/manual_presence_change.rb +16 -0
- data/lib/slack/real_time/event_handlers/pin_added.rb +18 -0
- data/lib/slack/real_time/event_handlers/pin_removed.rb +18 -0
- data/lib/slack/real_time/event_handlers/pref_change.rb +16 -0
- data/lib/slack/real_time/event_handlers/presence_change.rb +17 -0
- data/lib/slack/real_time/event_handlers/reaction_added.rb +18 -0
- data/lib/slack/real_time/event_handlers/reaction_removed.rb +18 -0
- data/lib/slack/real_time/event_handlers/reconnect_url.rb +18 -0
- data/lib/slack/real_time/event_handlers/star_added.rb +18 -0
- data/lib/slack/real_time/event_handlers/star_removed.rb +18 -0
- data/lib/slack/real_time/event_handlers/subteam_created.rb +18 -0
- data/lib/slack/real_time/event_handlers/subteam_self_added.rb +18 -0
- data/lib/slack/real_time/event_handlers/subteam_self_removed.rb +18 -0
- data/lib/slack/real_time/event_handlers/subteam_updated.rb +18 -0
- data/lib/slack/real_time/event_handlers/team_domain_change.rb +17 -0
- data/lib/slack/real_time/event_handlers/team_join.rb +16 -0
- data/lib/slack/real_time/event_handlers/team_migration_started.rb +18 -0
- data/lib/slack/real_time/event_handlers/team_plan_change.rb +16 -0
- data/lib/slack/real_time/event_handlers/team_pref_change.rb +16 -0
- data/lib/slack/real_time/event_handlers/team_profile_change.rb +18 -0
- data/lib/slack/real_time/event_handlers/team_profile_delete.rb +18 -0
- data/lib/slack/real_time/event_handlers/team_profile_reorder.rb +18 -0
- data/lib/slack/real_time/event_handlers/team_rename.rb +16 -0
- data/lib/slack/real_time/event_handlers/user_change.rb +16 -0
- data/lib/slack/real_time/event_handlers/user_typing.rb +18 -0
- data/lib/slack/real_time/models.rb +7 -0
- data/lib/slack/real_time/models/base.rb +11 -0
- data/lib/slack/real_time/models/bot.rb +8 -0
- data/lib/slack/real_time/models/channel.rb +8 -0
- data/lib/slack/real_time/models/group.rb +8 -0
- data/lib/slack/real_time/models/im.rb +8 -0
- data/lib/slack/real_time/models/team.rb +8 -0
- data/lib/slack/real_time/models/user.rb +8 -0
- data/lib/slack/real_time/store.rb +47 -0
- data/lib/slack/version.rb +1 -1
- data/lib/slack/web/api/endpoints.rb +1 -1
- data/lib/slack/web/api/endpoints/api.rb +1 -1
- data/lib/slack/web/api/endpoints/auth.rb +1 -1
- data/lib/slack/web/api/endpoints/channels.rb +2 -4
- data/lib/slack/web/api/endpoints/chat.rb +1 -1
- data/lib/slack/web/api/endpoints/dnd.rb +1 -1
- data/lib/slack/web/api/endpoints/emoji.rb +1 -1
- data/lib/slack/web/api/endpoints/files.rb +4 -1
- data/lib/slack/web/api/endpoints/groups.rb +1 -1
- data/lib/slack/web/api/endpoints/im.rb +1 -1
- data/lib/slack/web/api/endpoints/mpim.rb +1 -1
- data/lib/slack/web/api/endpoints/oauth.rb +1 -1
- data/lib/slack/web/api/endpoints/pins.rb +1 -1
- data/lib/slack/web/api/endpoints/reactions.rb +1 -1
- data/lib/slack/web/api/endpoints/rtm.rb +1 -1
- data/lib/slack/web/api/endpoints/search.rb +1 -1
- data/lib/slack/web/api/endpoints/stars.rb +1 -1
- data/lib/slack/web/api/endpoints/team.rb +1 -1
- data/lib/slack/web/api/endpoints/usergroups.rb +1 -1
- data/lib/slack/web/api/endpoints/users.rb +1 -1
- data/lib/slack/web/api/mixins.rb +1 -0
- data/lib/slack/web/api/mixins/channels.id.rb +2 -2
- data/lib/slack/web/api/mixins/groups.id.rb +2 -2
- data/lib/slack/web/api/mixins/users.id.rb +2 -2
- data/lib/slack/web/api/mixins/users.search.json +19 -0
- data/lib/slack/web/api/mixins/users.search.rb +43 -0
- data/lib/slack/web/api/templates/command.erb +1 -1
- data/lib/slack/web/api/templates/commands.erb +1 -1
- data/lib/slack/web/api/templates/endpoints.erb +1 -1
- data/lib/slack/web/api/templates/method.erb +1 -1
- data/lib/slack/web/api/templates/method_spec.erb +20 -0
- data/lib/slack/web/faraday/connection.rb +1 -0
- data/lib/tasks/git.rake +7 -0
- data/lib/tasks/real_time.rake +45 -0
- data/lib/tasks/update.rake +9 -0
- data/lib/{slack/web/api/tasks/generate.rake → tasks/web.rake} +6 -6
- data/slack-ruby-client.gemspec +1 -0
- data/spec/fixtures/slack/web/rtm_start.yml +53 -22
- data/spec/integration/integration_spec.rb +5 -5
- data/spec/slack/real_time/client_spec.rb +72 -10
- data/spec/slack/real_time/event_handlers/bot_spec.rb +42 -0
- data/spec/slack/real_time/event_handlers/channel_spec.rb +116 -0
- data/spec/slack/real_time/event_handlers/group_spec.rb +90 -0
- data/spec/slack/real_time/event_handlers/im_spec.rb +47 -0
- data/spec/slack/real_time/event_handlers/team_spec.rb +58 -0
- data/spec/slack/real_time/event_handlers/user_spec.rb +61 -0
- data/spec/slack/real_time/rtm_start_spec.rb +13 -0
- data/spec/slack/real_time/store_spec.rb +11 -0
- data/spec/slack/slack_spec.rb +6 -6
- data/spec/slack/web/api/endpoints/api_spec.rb +7 -0
- data/spec/slack/web/api/endpoints/{auth_spec.rb → custom_specs/auth_spec.rb} +0 -0
- data/spec/slack/web/api/endpoints/{channels_spec.rb → custom_specs/channels_spec.rb} +1 -1
- data/spec/slack/web/api/endpoints/{chat_spec.rb → custom_specs/chat_spec.rb} +0 -0
- data/spec/slack/web/api/endpoints/{groups_spec.rb → custom_specs/groups_spec.rb} +1 -1
- data/spec/slack/web/api/endpoints/custom_specs/users_spec.rb +23 -0
- data/spec/slack/web/api/endpoints/dnd_spec.rb +12 -0
- data/spec/slack/web/api/endpoints/emoji_spec.rb +7 -0
- data/spec/slack/web/api/endpoints/files_spec.rb +36 -0
- data/spec/slack/web/api/endpoints/im_spec.rb +30 -0
- data/spec/slack/web/api/endpoints/mpim_spec.rb +30 -0
- data/spec/slack/web/api/endpoints/oauth_spec.rb +18 -0
- data/spec/slack/web/api/endpoints/pins_spec.rb +22 -0
- data/spec/slack/web/api/endpoints/reactions_spec.rb +17 -0
- data/spec/slack/web/api/endpoints/rtm_spec.rb +7 -0
- data/spec/slack/web/api/endpoints/search_spec.rb +22 -0
- data/spec/slack/web/api/endpoints/stars_spec.rb +7 -0
- data/spec/slack/web/api/endpoints/team_spec.rb +7 -0
- data/spec/slack/web/api/endpoints/usergroups_spec.rb +35 -0
- data/spec/slack/web/api/mixins/channels_spec.rb +6 -6
- data/spec/slack/web/api/mixins/groups_spec.rb +6 -6
- data/spec/slack/web/api/mixins/users_spec.rb +12 -6
- data/spec/support/real_time/event.rb +11 -0
- metadata +159 -13
- data/spec/slack/web/api/endpoints/users_spec.rb +0 -17
@@ -0,0 +1,58 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
RSpec.describe Slack::RealTime::Client, vcr: { cassette_name: 'web/rtm_start' } do
|
4
|
+
include_context 'connected client'
|
5
|
+
|
6
|
+
context 'team' do
|
7
|
+
it 'sets team data on rtm.start' do
|
8
|
+
expect(client.team.name).to eq 'dblock'
|
9
|
+
expect(client.team.domain).to eq 'dblockdotorg'
|
10
|
+
expect(client.team.email_domain).to eq 'dblock.org'
|
11
|
+
expect(client.team.prefs.invites_only_admins).to be true
|
12
|
+
expect(client.team.plan).to eq ''
|
13
|
+
end
|
14
|
+
it 'team_domain_change' do
|
15
|
+
event = Slack::RealTime::Event.new(
|
16
|
+
'type' => 'team_domain_change',
|
17
|
+
'url' => 'https://my.slack.com',
|
18
|
+
'domain' => 'my'
|
19
|
+
)
|
20
|
+
client.send(:dispatch, event)
|
21
|
+
expect(client.team.domain).to eq 'my'
|
22
|
+
expect(client.team['url']).to eq 'https://my.slack.com'
|
23
|
+
end
|
24
|
+
it 'email_domain_changed' do
|
25
|
+
event = Slack::RealTime::Event.new(
|
26
|
+
'type' => 'email_domain_changed',
|
27
|
+
'email_domain' => 'example.com'
|
28
|
+
)
|
29
|
+
client.send(:dispatch, event)
|
30
|
+
expect(client.team.email_domain).to eq 'example.com'
|
31
|
+
end
|
32
|
+
it 'team_pref_change' do
|
33
|
+
event = Slack::RealTime::Event.new(
|
34
|
+
'type' => 'team_pref_change',
|
35
|
+
'name' => 'invites_only_admins',
|
36
|
+
'value' => false
|
37
|
+
)
|
38
|
+
client.send(:dispatch, event)
|
39
|
+
expect(client.team.prefs.invites_only_admins).to be false
|
40
|
+
end
|
41
|
+
it 'team_rename' do
|
42
|
+
event = Slack::RealTime::Event.new(
|
43
|
+
'type' => 'team_rename',
|
44
|
+
'name' => 'New Team Name Inc.'
|
45
|
+
)
|
46
|
+
client.send(:dispatch, event)
|
47
|
+
expect(client.team.name).to eq 'New Team Name Inc.'
|
48
|
+
end
|
49
|
+
it 'team_plan_change' do
|
50
|
+
event = Slack::RealTime::Event.new(
|
51
|
+
'type' => 'team_plan_change',
|
52
|
+
'plan' => 'std'
|
53
|
+
)
|
54
|
+
client.send(:dispatch, event)
|
55
|
+
expect(client.team.plan).to eq 'std'
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
@@ -0,0 +1,61 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
RSpec.describe Slack::RealTime::Client, vcr: { cassette_name: 'web/rtm_start' } do
|
4
|
+
include_context 'connected client'
|
5
|
+
|
6
|
+
context 'user' do
|
7
|
+
it 'combines user and self data on rtm.start' do
|
8
|
+
expect(client.users['U07518DTL'].name).to eq 'rubybot'
|
9
|
+
expect(client.users['U07518DTL']['prefs']['push_sound']).to eq 'b2.mp3'
|
10
|
+
end
|
11
|
+
it 'user_change' do
|
12
|
+
expect(client.users['U07KECJ77'].name).to eq 'aws'
|
13
|
+
event = Slack::RealTime::Event.new(
|
14
|
+
'type' => 'user_change',
|
15
|
+
'user' => {
|
16
|
+
'id' => 'U07KECJ77', 'name' => 'renamed'
|
17
|
+
})
|
18
|
+
client.send(:dispatch, event)
|
19
|
+
expect(client.users['U07KECJ77'].name).to eq 'renamed'
|
20
|
+
end
|
21
|
+
it 'team_join' do
|
22
|
+
expect do
|
23
|
+
event = Slack::RealTime::Event.new(
|
24
|
+
'type' => 'team_join',
|
25
|
+
'user' => {
|
26
|
+
'id' => 'DEADBEEF', 'name' => 'added'
|
27
|
+
})
|
28
|
+
client.send(:dispatch, event)
|
29
|
+
end.to change(client.users, :count).by(1)
|
30
|
+
expect(client.users['DEADBEEF'].name).to eq 'added'
|
31
|
+
end
|
32
|
+
it 'pref_change' do
|
33
|
+
event = Slack::RealTime::Event.new(
|
34
|
+
'type' => 'pref_change',
|
35
|
+
'name' => 'push_sound',
|
36
|
+
'value' => 'updated.mp3'
|
37
|
+
)
|
38
|
+
client.send(:dispatch, event)
|
39
|
+
expect(client.self.prefs['push_sound']).to eq 'updated.mp3'
|
40
|
+
end
|
41
|
+
it 'presence_change' do
|
42
|
+
expect(client.users['U07KECJ77'].presence).to eq 'away'
|
43
|
+
event = Slack::RealTime::Event.new(
|
44
|
+
'type' => 'presence_change',
|
45
|
+
'user' => 'U07KECJ77',
|
46
|
+
'presence' => 'updated'
|
47
|
+
)
|
48
|
+
client.send(:dispatch, event)
|
49
|
+
expect(client.users['U07KECJ77'].presence).to eq 'updated'
|
50
|
+
end
|
51
|
+
it 'manual_presence_change' do
|
52
|
+
expect(client.self['presence']).to eq 'away'
|
53
|
+
event = Slack::RealTime::Event.new(
|
54
|
+
'type' => 'manual_presence_change',
|
55
|
+
'presence' => 'updated'
|
56
|
+
)
|
57
|
+
client.send(:dispatch, event)
|
58
|
+
expect(client.self.presence).to eq 'updated'
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# require 'spec_helper'
|
2
|
+
|
3
|
+
#
|
4
|
+
# to re-record a rtm_start fixture run with
|
5
|
+
# SLACK_API_TOKEN=... CONCURRENCY=faye-websocket rspec spec/slack/real_time/rtm_start_spec.rb
|
6
|
+
# edit rtm_start.yml and remove the token, fix wss:// path (run specs, fix failures)
|
7
|
+
#
|
8
|
+
|
9
|
+
# RSpec.describe Slack::RealTime::Client, vcr: { cassette_name: 'web/rtm_start' } do
|
10
|
+
# it 'connects' do
|
11
|
+
# Slack::Web::Client.new.rtm_start(mpim_aware: true)
|
12
|
+
# end
|
13
|
+
# end
|
@@ -0,0 +1,11 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
RSpec.describe Slack::RealTime::Store do
|
4
|
+
it 'can be initialized with an empty hash' do
|
5
|
+
store = Slack::RealTime::Store.new(Hashie::Mash.new)
|
6
|
+
expect(store.self).to be nil
|
7
|
+
expect(store.groups.count).to eq 0
|
8
|
+
expect(store.team).to be nil
|
9
|
+
expect(store.teams.count).to eq 0
|
10
|
+
end
|
11
|
+
end
|
data/spec/slack/slack_spec.rb
CHANGED
@@ -34,7 +34,7 @@ describe Slack do
|
|
34
34
|
end
|
35
35
|
context 'good auth' do
|
36
36
|
it 'succeeds' do
|
37
|
-
json = JSON.parse
|
37
|
+
json = Slack::Messages::Message.new(JSON.parse(`"#{slack}" --vcr-cassette-name=web/auth_test_success --slack-api-token=token auth test 2>&1`))
|
38
38
|
expect(json).to eq(
|
39
39
|
'ok' => true,
|
40
40
|
'url' => 'https://rubybot.slack.com/',
|
@@ -43,16 +43,16 @@ describe Slack do
|
|
43
43
|
'team_id' => 'TDEADBEEF',
|
44
44
|
'user_id' => 'UBAADFOOD'
|
45
45
|
)
|
46
|
-
expect(json
|
46
|
+
expect(json.ok).to be true
|
47
47
|
end
|
48
48
|
end
|
49
49
|
end
|
50
50
|
describe '#users' do
|
51
51
|
it 'list' do
|
52
|
-
json = JSON.parse
|
53
|
-
expect(json
|
54
|
-
expect(json
|
55
|
-
expect(json
|
52
|
+
json = Slack::Messages::Message.new(JSON.parse(`"#{slack}" --vcr-cassette-name=web/users_list --slack-api-token=token users list --presence=true 2>&1`))
|
53
|
+
expect(json.ok).to be true
|
54
|
+
expect(json.members.size).to eq 9
|
55
|
+
expect(json.members.first['presence']).to eq 'away'
|
56
56
|
end
|
57
57
|
end
|
58
58
|
end
|
File without changes
|
@@ -5,7 +5,7 @@ RSpec.describe Slack::Web::Api::Endpoints::Channels do
|
|
5
5
|
context 'channels' do
|
6
6
|
it 'info', vcr: { cassette_name: 'web/channels_info' } do
|
7
7
|
json = client.channels_info(channel: '#general')
|
8
|
-
expect(json
|
8
|
+
expect(json.channel.name).to eq 'general'
|
9
9
|
end
|
10
10
|
end
|
11
11
|
end
|
File without changes
|
@@ -5,7 +5,7 @@ RSpec.describe Slack::Web::Api::Endpoints::Groups do
|
|
5
5
|
context 'groups' do
|
6
6
|
it 'info', vcr: { cassette_name: 'web/groups_info' } do
|
7
7
|
json = client.groups_info(channel: '#mpdm-dblock--rubybot--player1-1')
|
8
|
-
expect(json
|
8
|
+
expect(json.group.name).to eq 'mpdm-dblock--rubybot--player1-1'
|
9
9
|
end
|
10
10
|
end
|
11
11
|
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
RSpec.describe Slack::Web::Api::Endpoints::Users do
|
4
|
+
let(:client) { Slack::Web::Client.new }
|
5
|
+
context 'users' do
|
6
|
+
it 'list', vcr: { cassette_name: 'web/users_list' } do
|
7
|
+
json = client.users_list(presence: true)
|
8
|
+
expect(json.ok).to be true
|
9
|
+
expect(json.members.size).to eq 9
|
10
|
+
expect(json.members.first.presence).to eq 'away'
|
11
|
+
end
|
12
|
+
it 'info', vcr: { cassette_name: 'web/users_info' } do
|
13
|
+
json = client.users_info(user: '@aws')
|
14
|
+
expect(json.user.name).to eq 'aws'
|
15
|
+
end
|
16
|
+
it 'search', vcr: { cassette_name: 'web/users_info' } do
|
17
|
+
json = client.users_search(user: 'aws')
|
18
|
+
expect(json.ok).to be true
|
19
|
+
expect(json.members.size).to eq 1
|
20
|
+
expect(json.members.first.name).to eq 'aws'
|
21
|
+
end if defined?(Picky)
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
# This file was auto-generated by lib/tasks/web.rake
|
2
|
+
|
3
|
+
require 'spec_helper'
|
4
|
+
|
5
|
+
RSpec.describe Slack::Web::Api::Endpoints::Dnd do
|
6
|
+
let(:client) { Slack::Web::Client.new }
|
7
|
+
context 'dnd_setSnooze' do
|
8
|
+
it 'requires num_minutes' do
|
9
|
+
expect { client.dnd_setSnooze }.to raise_error ArgumentError, /Required arguments :num_minutes missing/
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
# This file was auto-generated by lib/tasks/web.rake
|
2
|
+
|
3
|
+
require 'spec_helper'
|
4
|
+
|
5
|
+
RSpec.describe Slack::Web::Api::Endpoints::Files do
|
6
|
+
let(:client) { Slack::Web::Client.new }
|
7
|
+
context 'files_comments' do
|
8
|
+
it 'requires file' do
|
9
|
+
expect { client.files_comments(id: 'Fc1234567890', comment: 'Everyone should take a moment to read this file, seriously.') }.to raise_error ArgumentError, /Required arguments :file missing/
|
10
|
+
end
|
11
|
+
it 'requires id' do
|
12
|
+
expect { client.files_comments(file: 'F1234567890', comment: 'Everyone should take a moment to read this file, seriously.') }.to raise_error ArgumentError, /Required arguments :id missing/
|
13
|
+
end
|
14
|
+
it 'requires comment' do
|
15
|
+
expect { client.files_comments(file: 'F1234567890', id: 'Fc1234567890') }.to raise_error ArgumentError, /Required arguments :comment missing/
|
16
|
+
end
|
17
|
+
end
|
18
|
+
context 'files_delete' do
|
19
|
+
it 'requires file' do
|
20
|
+
expect { client.files_delete }.to raise_error ArgumentError, /Required arguments :file missing/
|
21
|
+
end
|
22
|
+
end
|
23
|
+
context 'files_info' do
|
24
|
+
it 'requires file' do
|
25
|
+
expect { client.files_info }.to raise_error ArgumentError, /Required arguments :file missing/
|
26
|
+
end
|
27
|
+
end
|
28
|
+
context 'files_upload' do
|
29
|
+
it 'requires file' do
|
30
|
+
expect { client.files_upload(filename: 'foo.txt') }.to raise_error ArgumentError, /Required arguments :file missing/
|
31
|
+
end
|
32
|
+
it 'requires filename' do
|
33
|
+
expect { client.files_upload(file: '...') }.to raise_error ArgumentError, /Required arguments :filename missing/
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
# This file was auto-generated by lib/tasks/web.rake
|
2
|
+
|
3
|
+
require 'spec_helper'
|
4
|
+
|
5
|
+
RSpec.describe Slack::Web::Api::Endpoints::Im do
|
6
|
+
let(:client) { Slack::Web::Client.new }
|
7
|
+
context 'im_close' do
|
8
|
+
it 'requires channel' do
|
9
|
+
expect { client.im_close }.to raise_error ArgumentError, /Required arguments :channel missing/
|
10
|
+
end
|
11
|
+
end
|
12
|
+
context 'im_history' do
|
13
|
+
it 'requires channel' do
|
14
|
+
expect { client.im_history }.to raise_error ArgumentError, /Required arguments :channel missing/
|
15
|
+
end
|
16
|
+
end
|
17
|
+
context 'im_mark' do
|
18
|
+
it 'requires channel' do
|
19
|
+
expect { client.im_mark(ts: '1234567890.123456') }.to raise_error ArgumentError, /Required arguments :channel missing/
|
20
|
+
end
|
21
|
+
it 'requires ts' do
|
22
|
+
expect { client.im_mark(channel: 'D1234567890') }.to raise_error ArgumentError, /Required arguments :ts missing/
|
23
|
+
end
|
24
|
+
end
|
25
|
+
context 'im_open' do
|
26
|
+
it 'requires user' do
|
27
|
+
expect { client.im_open }.to raise_error ArgumentError, /Required arguments :user missing/
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
# This file was auto-generated by lib/tasks/web.rake
|
2
|
+
|
3
|
+
require 'spec_helper'
|
4
|
+
|
5
|
+
RSpec.describe Slack::Web::Api::Endpoints::Mpim do
|
6
|
+
let(:client) { Slack::Web::Client.new }
|
7
|
+
context 'mpim_close' do
|
8
|
+
it 'requires channel' do
|
9
|
+
expect { client.mpim_close }.to raise_error ArgumentError, /Required arguments :channel missing/
|
10
|
+
end
|
11
|
+
end
|
12
|
+
context 'mpim_history' do
|
13
|
+
it 'requires channel' do
|
14
|
+
expect { client.mpim_history }.to raise_error ArgumentError, /Required arguments :channel missing/
|
15
|
+
end
|
16
|
+
end
|
17
|
+
context 'mpim_mark' do
|
18
|
+
it 'requires channel' do
|
19
|
+
expect { client.mpim_mark(ts: '1234567890.123456') }.to raise_error ArgumentError, /Required arguments :channel missing/
|
20
|
+
end
|
21
|
+
it 'requires ts' do
|
22
|
+
expect { client.mpim_mark(channel: 'G1234567890') }.to raise_error ArgumentError, /Required arguments :ts missing/
|
23
|
+
end
|
24
|
+
end
|
25
|
+
context 'mpim_open' do
|
26
|
+
it 'requires users' do
|
27
|
+
expect { client.mpim_open }.to raise_error ArgumentError, /Required arguments :users missing/
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
# This file was auto-generated by lib/tasks/web.rake
|
2
|
+
|
3
|
+
require 'spec_helper'
|
4
|
+
|
5
|
+
RSpec.describe Slack::Web::Api::Endpoints::Oauth do
|
6
|
+
let(:client) { Slack::Web::Client.new }
|
7
|
+
context 'oauth_access' do
|
8
|
+
it 'requires client_id' do
|
9
|
+
expect { client.oauth_access(client_secret: '33fea0113f5b1', code: 'ccdaa72ad') }.to raise_error ArgumentError, /Required arguments :client_id missing/
|
10
|
+
end
|
11
|
+
it 'requires client_secret' do
|
12
|
+
expect { client.oauth_access(client_id: '4b39e9-752c4', code: 'ccdaa72ad') }.to raise_error ArgumentError, /Required arguments :client_secret missing/
|
13
|
+
end
|
14
|
+
it 'requires code' do
|
15
|
+
expect { client.oauth_access(client_id: '4b39e9-752c4', client_secret: '33fea0113f5b1') }.to raise_error ArgumentError, /Required arguments :code missing/
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# This file was auto-generated by lib/tasks/web.rake
|
2
|
+
|
3
|
+
require 'spec_helper'
|
4
|
+
|
5
|
+
RSpec.describe Slack::Web::Api::Endpoints::Pins do
|
6
|
+
let(:client) { Slack::Web::Client.new }
|
7
|
+
context 'pins_add' do
|
8
|
+
it 'requires channel' do
|
9
|
+
expect { client.pins_add }.to raise_error ArgumentError, /Required arguments :channel missing/
|
10
|
+
end
|
11
|
+
end
|
12
|
+
context 'pins_list' do
|
13
|
+
it 'requires channel' do
|
14
|
+
expect { client.pins_list }.to raise_error ArgumentError, /Required arguments :channel missing/
|
15
|
+
end
|
16
|
+
end
|
17
|
+
context 'pins_remove' do
|
18
|
+
it 'requires channel' do
|
19
|
+
expect { client.pins_remove }.to raise_error ArgumentError, /Required arguments :channel missing/
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# This file was auto-generated by lib/tasks/web.rake
|
2
|
+
|
3
|
+
require 'spec_helper'
|
4
|
+
|
5
|
+
RSpec.describe Slack::Web::Api::Endpoints::Reactions do
|
6
|
+
let(:client) { Slack::Web::Client.new }
|
7
|
+
context 'reactions_add' do
|
8
|
+
it 'requires name' do
|
9
|
+
expect { client.reactions_add }.to raise_error ArgumentError, /Required arguments :name missing/
|
10
|
+
end
|
11
|
+
end
|
12
|
+
context 'reactions_remove' do
|
13
|
+
it 'requires name' do
|
14
|
+
expect { client.reactions_remove }.to raise_error ArgumentError, /Required arguments :name missing/
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# This file was auto-generated by lib/tasks/web.rake
|
2
|
+
|
3
|
+
require 'spec_helper'
|
4
|
+
|
5
|
+
RSpec.describe Slack::Web::Api::Endpoints::Search do
|
6
|
+
let(:client) { Slack::Web::Client.new }
|
7
|
+
context 'search_all' do
|
8
|
+
it 'requires query' do
|
9
|
+
expect { client.search_all }.to raise_error ArgumentError, /Required arguments :query missing/
|
10
|
+
end
|
11
|
+
end
|
12
|
+
context 'search_files' do
|
13
|
+
it 'requires query' do
|
14
|
+
expect { client.search_files }.to raise_error ArgumentError, /Required arguments :query missing/
|
15
|
+
end
|
16
|
+
end
|
17
|
+
context 'search_messages' do
|
18
|
+
it 'requires query' do
|
19
|
+
expect { client.search_messages }.to raise_error ArgumentError, /Required arguments :query missing/
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|