slack-ruby-client 0.13.0 → 0.17.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/.github/FUNDING.yml +1 -0
- data/.gitignore +1 -0
- data/.rubocop.yml +24 -5
- data/.rubocop_todo.yml +100 -54
- data/.travis.yml +4 -8
- data/CHANGELOG.md +118 -35
- data/CONTRIBUTING.md +17 -6
- data/Dangerfile +2 -0
- data/Gemfile +10 -5
- data/LICENSE.md +1 -1
- data/README.md +185 -48
- data/Rakefile +2 -1
- data/UPGRADING.md +30 -2
- data/bin/commands.rb +32 -0
- data/bin/commands/admin_analytics.rb +16 -0
- data/bin/commands/admin_apps.rb +40 -0
- data/bin/commands/admin_apps_approved.rb +17 -0
- data/bin/commands/admin_apps_requests.rb +16 -0
- data/bin/commands/admin_apps_restricted.rb +17 -0
- data/bin/commands/admin_barriers.rb +47 -0
- data/bin/commands/admin_conversations.rb +159 -0
- data/bin/commands/admin_conversations_ekm.rb +17 -0
- data/bin/commands/admin_conversations_restrictAccess.rb +37 -0
- data/bin/commands/admin_conversations_whitelist.rb +37 -0
- data/bin/commands/admin_emoji.rb +54 -0
- data/bin/commands/admin_inviteRequests.rb +36 -0
- data/bin/commands/admin_inviteRequests_approved.rb +16 -0
- data/bin/commands/admin_inviteRequests_denied.rb +16 -0
- data/bin/commands/admin_teams.rb +27 -0
- data/bin/commands/admin_teams_admins.rb +16 -0
- data/bin/commands/admin_teams_owners.rb +16 -0
- data/bin/commands/admin_teams_settings.rb +64 -0
- data/bin/commands/admin_usergroups.rb +48 -0
- data/bin/commands/admin_users.rb +97 -0
- data/bin/commands/admin_users_session.rb +38 -0
- data/bin/commands/api.rb +1 -1
- data/bin/commands/apps.rb +15 -0
- data/bin/commands/apps_connections.rb +13 -0
- data/bin/commands/apps_event_authorizations.rb +16 -0
- data/bin/commands/apps_permissions.rb +1 -0
- data/bin/commands/apps_permissions_resources.rb +1 -0
- data/bin/commands/apps_permissions_scopes.rb +1 -0
- data/bin/commands/apps_permissions_users.rb +1 -0
- data/bin/commands/auth.rb +1 -0
- data/bin/commands/auth_teams.rb +16 -0
- data/bin/commands/bots.rb +2 -0
- data/bin/commands/calls.rb +52 -0
- data/bin/commands/calls_participants.rb +25 -0
- data/bin/commands/channels.rb +1 -153
- data/bin/commands/chat.rb +51 -10
- data/bin/commands/chat_scheduledMessages.rb +19 -0
- data/bin/commands/conversations.rb +16 -3
- data/bin/commands/dialog.rb +1 -0
- data/bin/commands/dnd.rb +5 -2
- data/bin/commands/emoji.rb +1 -0
- data/bin/commands/files.rb +8 -17
- data/bin/commands/files_comments.rb +1 -21
- data/bin/commands/files_remote.rb +78 -0
- data/bin/commands/groups.rb +1 -161
- data/bin/commands/im.rb +1 -62
- data/bin/commands/migration.rb +2 -0
- data/bin/commands/mpim.rb +1 -60
- data/bin/commands/oauth.rb +2 -1
- data/bin/commands/oauth_v2.rb +17 -0
- data/bin/commands/pins.rb +1 -4
- data/bin/commands/reactions.rb +3 -3
- data/bin/commands/reminders.rb +1 -0
- data/bin/commands/rtm.rb +1 -0
- data/bin/commands/search.rb +4 -0
- data/bin/commands/stars.rb +1 -0
- data/bin/commands/team.rb +5 -0
- data/bin/commands/team_profile.rb +1 -0
- data/bin/commands/usergroups.rb +6 -0
- data/bin/commands/usergroups_users.rb +3 -0
- data/bin/commands/users.rb +5 -3
- data/bin/commands/users_admin.rb +1 -0
- data/bin/commands/users_prefs.rb +1 -0
- data/bin/commands/users_profile.rb +6 -5
- data/bin/commands/views.rb +48 -0
- data/bin/commands/workflows.rb +38 -0
- data/bin/slack +2 -3
- data/examples/hi_real_time_and_web/Gemfile +1 -0
- data/examples/hi_real_time_and_web/hi.rb +7 -3
- data/examples/hi_real_time_async_async/Gemfile +1 -0
- data/examples/hi_real_time_async_async/hi.rb +6 -2
- data/examples/hi_web/Gemfile +1 -0
- data/examples/hi_web/hi.rb +1 -0
- data/examples/new_ticket/Gemfile +1 -0
- data/examples/new_ticket/new_ticket.rb +1 -0
- data/lib/slack-ruby-client.rb +10 -4
- data/lib/slack.rb +1 -0
- data/lib/slack/config.rb +1 -0
- data/lib/slack/events/config.rb +32 -0
- data/lib/slack/events/request.rb +70 -0
- data/lib/slack/logger.rb +6 -5
- data/lib/slack/messages/formatting.rb +1 -0
- data/lib/slack/messages/message.rb +1 -4
- data/lib/slack/real_time/api/message.rb +3 -1
- data/lib/slack/real_time/api/message_id.rb +1 -0
- data/lib/slack/real_time/api/ping.rb +5 -2
- data/lib/slack/real_time/api/typing.rb +3 -1
- data/lib/slack/real_time/client.rb +98 -28
- data/lib/slack/real_time/concurrency.rb +1 -2
- data/lib/slack/real_time/concurrency/async.rb +79 -6
- data/lib/slack/real_time/config.rb +6 -10
- data/lib/slack/real_time/models.rb +1 -0
- data/lib/slack/real_time/models/base.rb +1 -4
- data/lib/slack/real_time/models/bot.rb +1 -0
- data/lib/slack/real_time/models/channel.rb +1 -0
- data/lib/slack/real_time/models/group.rb +1 -0
- data/lib/slack/real_time/models/im.rb +1 -0
- data/lib/slack/real_time/models/team.rb +1 -0
- data/lib/slack/real_time/models/user.rb +1 -0
- data/lib/slack/real_time/socket.rb +44 -15
- data/lib/slack/real_time/stores.rb +1 -0
- data/lib/slack/real_time/stores/base.rb +4 -1
- data/lib/slack/real_time/stores/starter.rb +11 -0
- data/lib/slack/real_time/stores/store.rb +28 -25
- data/lib/slack/version.rb +2 -1
- data/lib/slack/web/api/endpoints.rb +64 -0
- data/lib/slack/web/api/endpoints/admin_analytics.rb +28 -0
- data/lib/slack/web/api/endpoints/admin_apps.rb +62 -0
- data/lib/slack/web/api/endpoints/admin_apps_approved.rb +35 -0
- data/lib/slack/web/api/endpoints/admin_apps_requests.rb +33 -0
- data/lib/slack/web/api/endpoints/admin_apps_restricted.rb +35 -0
- data/lib/slack/web/api/endpoints/admin_barriers.rb +82 -0
- data/lib/slack/web/api/endpoints/admin_conversations.rb +246 -0
- data/lib/slack/web/api/endpoints/admin_conversations_ekm.rb +35 -0
- data/lib/slack/web/api/endpoints/admin_conversations_restrictAccess.rb +61 -0
- data/lib/slack/web/api/endpoints/admin_conversations_whitelist.rb +64 -0
- data/lib/slack/web/api/endpoints/admin_emoji.rb +88 -0
- data/lib/slack/web/api/endpoints/admin_inviteRequests.rb +61 -0
- data/lib/slack/web/api/endpoints/admin_inviteRequests_approved.rb +33 -0
- data/lib/slack/web/api/endpoints/admin_inviteRequests_denied.rb +33 -0
- data/lib/slack/web/api/endpoints/admin_teams.rb +50 -0
- data/lib/slack/web/api/endpoints/admin_teams_admins.rb +34 -0
- data/lib/slack/web/api/endpoints/admin_teams_owners.rb +34 -0
- data/lib/slack/web/api/endpoints/admin_teams_settings.rb +99 -0
- data/lib/slack/web/api/endpoints/admin_usergroups.rb +77 -0
- data/lib/slack/web/api/endpoints/admin_users.rb +161 -0
- data/lib/slack/web/api/endpoints/admin_users_session.rb +66 -0
- data/lib/slack/web/api/endpoints/api.rb +1 -2
- data/lib/slack/web/api/endpoints/apps.rb +27 -0
- data/lib/slack/web/api/endpoints/apps_connections.rb +21 -0
- data/lib/slack/web/api/endpoints/apps_event_authorizations.rb +34 -0
- data/lib/slack/web/api/endpoints/apps_permissions.rb +1 -0
- data/lib/slack/web/api/endpoints/apps_permissions_resources.rb +1 -0
- data/lib/slack/web/api/endpoints/apps_permissions_scopes.rb +1 -0
- data/lib/slack/web/api/endpoints/apps_permissions_users.rb +1 -0
- data/lib/slack/web/api/endpoints/auth.rb +1 -0
- data/lib/slack/web/api/endpoints/auth_teams.rb +33 -0
- data/lib/slack/web/api/endpoints/bots.rb +3 -0
- data/lib/slack/web/api/endpoints/calls.rb +83 -0
- data/lib/slack/web/api/endpoints/calls_participants.rb +42 -0
- data/lib/slack/web/api/endpoints/channels.rb +2 -243
- data/lib/slack/web/api/endpoints/chat.rb +112 -21
- data/lib/slack/web/api/endpoints/chat_scheduledMessages.rb +40 -0
- data/lib/slack/web/api/endpoints/conversations.rb +40 -19
- data/lib/slack/web/api/endpoints/dialog.rb +1 -0
- data/lib/slack/web/api/endpoints/dnd.rb +7 -1
- data/lib/slack/web/api/endpoints/emoji.rb +1 -0
- data/lib/slack/web/api/endpoints/files.rb +10 -17
- data/lib/slack/web/api/endpoints/files_comments.rb +1 -33
- data/lib/slack/web/api/endpoints/files_remote.rb +127 -0
- data/lib/slack/web/api/endpoints/groups.rb +1 -253
- data/lib/slack/web/api/endpoints/im.rb +1 -101
- data/lib/slack/web/api/endpoints/migration.rb +3 -0
- data/lib/slack/web/api/endpoints/mpim.rb +1 -96
- data/lib/slack/web/api/endpoints/oauth.rb +2 -4
- data/lib/slack/web/api/endpoints/oauth_v2.rb +30 -0
- data/lib/slack/web/api/endpoints/pins.rb +4 -11
- data/lib/slack/web/api/endpoints/reactions.rb +10 -9
- data/lib/slack/web/api/endpoints/reminders.rb +1 -0
- data/lib/slack/web/api/endpoints/rtm.rb +1 -0
- data/lib/slack/web/api/endpoints/search.rb +7 -0
- data/lib/slack/web/api/endpoints/stars.rb +3 -2
- data/lib/slack/web/api/endpoints/team.rb +9 -0
- data/lib/slack/web/api/endpoints/team_profile.rb +1 -0
- data/lib/slack/web/api/endpoints/usergroups.rb +11 -0
- data/lib/slack/web/api/endpoints/usergroups_users.rb +5 -0
- data/lib/slack/web/api/endpoints/users.rb +8 -7
- data/lib/slack/web/api/endpoints/users_admin.rb +1 -0
- data/lib/slack/web/api/endpoints/users_prefs.rb +1 -0
- data/lib/slack/web/api/endpoints/users_profile.rb +4 -3
- data/lib/slack/web/api/endpoints/views.rb +97 -0
- data/lib/slack/web/api/endpoints/workflows.rb +61 -0
- data/lib/slack/web/api/error.rb +1 -0
- data/lib/slack/web/api/errors.rb +848 -0
- data/lib/slack/web/api/errors/internal_error.rb +14 -0
- data/lib/slack/web/api/errors/slack_error.rb +14 -1
- data/lib/slack/web/api/errors/too_many_requests_error.rb +1 -0
- data/lib/slack/web/api/mixins.rb +2 -0
- data/lib/slack/web/api/mixins/channels.id.rb +2 -3
- data/lib/slack/web/api/mixins/conversations.id.rb +25 -0
- data/lib/slack/web/api/mixins/groups.id.rb +2 -3
- data/lib/slack/web/api/mixins/ids.id.rb +3 -2
- data/lib/slack/web/api/mixins/users.id.rb +2 -3
- data/lib/slack/web/api/mixins/users.search.rb +1 -0
- data/lib/slack/web/api/patches/chat.1.patch +71 -0
- data/lib/slack/web/api/patches/views.1.view-json.patch +40 -0
- data/lib/slack/web/api/patches/views.1.views-published.patch +16 -0
- data/lib/slack/web/api/templates/command.erb +1 -0
- data/lib/slack/web/api/templates/commands.erb +1 -0
- data/lib/slack/web/api/templates/endpoints.erb +2 -0
- data/lib/slack/web/api/templates/errors.erb +20 -0
- data/lib/slack/web/api/templates/method.erb +5 -1
- data/lib/slack/web/api/templates/method_spec.erb +2 -1
- data/lib/slack/web/client.rb +2 -1
- data/lib/slack/web/config.rb +3 -0
- data/lib/slack/web/faraday/connection.rb +24 -20
- data/lib/slack/web/faraday/request.rb +1 -0
- data/lib/slack/web/faraday/response/raise_error.rb +21 -6
- data/lib/slack/web/faraday/response/wrap_error.rb +24 -0
- data/lib/slack/web/pagination/cursor.rb +6 -2
- data/lib/slack_ruby_client.rb +1 -0
- data/lib/tasks/git.rake +1 -0
- data/lib/tasks/real_time.rake +15 -5
- data/lib/tasks/update.rake +1 -0
- data/lib/tasks/web.rake +39 -10
- data/screenshots/create-app.png +0 -0
- data/slack-ruby-client.gemspec +8 -4
- data/spec/fixtures/slack/web/channels_info.yml +108 -15
- data/spec/fixtures/slack/web/{groups_info.yml → conversations_info.yml} +4 -4
- data/spec/fixtures/slack/web/conversations_setTopic.yml +69 -0
- data/spec/fixtures/slack/web/conversations_setTopic_one_page.yml +142 -0
- data/spec/fixtures/slack/web/conversations_setTopic_paginated.yml +208 -0
- data/spec/fixtures/slack/web/views_open_error.yml +76 -0
- data/spec/integration/integration_spec.rb +116 -49
- data/spec/slack/config_spec.rb +2 -0
- data/spec/slack/events/config_spec.rb +33 -0
- data/spec/slack/events/request_spec.rb +184 -0
- data/spec/slack/messages/formatting_spec.rb +25 -13
- data/spec/slack/real_time/api/message_spec.rb +6 -1
- data/spec/slack/real_time/api/ping_spec.rb +2 -0
- data/spec/slack/real_time/api/typing_spec.rb +5 -1
- data/spec/slack/real_time/client_spec.rb +228 -30
- data/spec/slack/real_time/concurrency/it_behaves_like_a_realtime_socket.rb +2 -0
- data/spec/slack/real_time/concurrency/with_concurrency_spec.rb +10 -0
- data/spec/slack/real_time/concurrency/without_concurrency_spec.rb +10 -0
- data/spec/slack/real_time/event_handlers/bot_spec.rb +2 -1
- data/spec/slack/real_time/event_handlers/channel_spec.rb +9 -6
- data/spec/slack/real_time/event_handlers/event_handlers_spec.rb +2 -1
- data/spec/slack/real_time/event_handlers/group_spec.rb +5 -4
- data/spec/slack/real_time/event_handlers/im_spec.rb +4 -3
- data/spec/slack/real_time/event_handlers/team_spec.rb +3 -1
- data/spec/slack/real_time/event_handlers/user_spec.rb +1 -0
- data/spec/slack/real_time/rtm_connect_spec.rb +2 -1
- data/spec/slack/real_time/rtm_start_spec.rb +2 -1
- data/spec/slack/real_time/store_spec.rb +2 -1
- data/spec/slack/slack_spec.rb +37 -5
- data/spec/slack/version_spec.rb +2 -1
- data/spec/slack/web/api/endpoints/admin_analytics_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/admin_apps_approved_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/admin_apps_requests_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/admin_apps_restricted_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/admin_apps_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/admin_barriers_spec.rb +38 -0
- data/spec/slack/web/api/endpoints/admin_conversations_ekm_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/admin_conversations_restrictAccess_spec.rb +32 -0
- data/spec/slack/web/api/endpoints/admin_conversations_spec.rb +93 -0
- data/spec/slack/web/api/endpoints/admin_emoji_spec.rb +37 -0
- data/spec/slack/web/api/endpoints/admin_inviteRequests_approved_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/admin_inviteRequests_denied_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/admin_inviteRequests_spec.rb +18 -0
- data/spec/slack/web/api/endpoints/admin_teams_admins_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/admin_teams_owners_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/admin_teams_settings_spec.rb +53 -0
- data/spec/slack/web/api/endpoints/admin_teams_spec.rb +16 -0
- data/spec/slack/web/api/endpoints/admin_usergroups_spec.rb +37 -0
- data/spec/slack/web/api/endpoints/admin_users_session_spec.rb +21 -0
- data/spec/slack/web/api/endpoints/admin_users_spec.rb +67 -0
- data/spec/slack/web/api/endpoints/api_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/apps_connections_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/apps_event_authorizations_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/apps_permissions_resources_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/apps_permissions_scopes_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/apps_permissions_spec.rb +3 -2
- data/spec/slack/web/api/endpoints/apps_permissions_users_spec.rb +4 -3
- data/spec/slack/web/api/endpoints/apps_spec.rb +16 -0
- data/spec/slack/web/api/endpoints/auth_teams_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/bots_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/calls_participants_spec.rb +24 -0
- data/spec/slack/web/api/endpoints/calls_spec.rb +31 -0
- data/spec/slack/web/api/endpoints/chat_scheduledMessages_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/conversations_spec.rb +21 -12
- data/spec/slack/web/api/endpoints/custom_specs/auth_spec.rb +5 -1
- data/spec/slack/web/api/endpoints/custom_specs/chat_spec.rb +112 -36
- data/spec/slack/web/api/endpoints/custom_specs/conversations_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/custom_specs/dialog_spec.rb +12 -4
- data/spec/slack/web/api/endpoints/custom_specs/users_spec.rb +6 -1
- data/spec/slack/web/api/endpoints/custom_specs/views_spec.rb +95 -0
- data/spec/slack/web/api/endpoints/dnd_spec.rb +6 -0
- data/spec/slack/web/api/endpoints/emoji_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/files_comments_spec.rb +3 -21
- data/spec/slack/web/api/endpoints/files_remote_spec.rb +24 -0
- data/spec/slack/web/api/endpoints/files_spec.rb +5 -4
- data/spec/slack/web/api/endpoints/im_spec.rb +1 -31
- data/spec/slack/web/api/endpoints/migration_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/mpim_spec.rb +1 -31
- data/spec/slack/web/api/endpoints/oauth_spec.rb +4 -14
- data/spec/slack/web/api/endpoints/oauth_v2_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/pins_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/reactions_spec.rb +8 -1
- data/spec/slack/web/api/endpoints/reminders_spec.rb +3 -2
- data/spec/slack/web/api/endpoints/rtm_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/search_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/stars_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/team_profile_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/team_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/usergroups_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/usergroups_users_spec.rb +3 -2
- data/spec/slack/web/api/endpoints/users_admin_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/users_prefs_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/users_profile_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/workflows_spec.rb +26 -0
- data/spec/slack/web/api/error_spec.rb +4 -2
- data/spec/slack/web/api/errors/slack_error_spec.rb +26 -2
- data/spec/slack/web/api/mixins/channels_spec.rb +17 -7
- data/spec/slack/web/api/mixins/conversations_list_spec.rb +21 -0
- data/spec/slack/web/api/mixins/conversations_spec.rb +43 -0
- data/spec/slack/web/api/mixins/groups_spec.rb +17 -7
- data/spec/slack/web/api/mixins/users_spec.rb +17 -8
- data/spec/slack/web/api/pagination/cursor_spec.rb +40 -10
- data/spec/slack/web/client_spec.rb +166 -18
- data/spec/slack/web/faraday/response/raise_error_spec.rb +47 -12
- data/spec/spec_helper.rb +8 -1
- data/spec/support/queue_with_timeout.rb +5 -4
- data/spec/support/real_time/concurrency/mock.rb +1 -0
- data/spec/support/real_time/connected_client.rb +9 -3
- data/spec/support/real_time/event.rb +1 -0
- data/spec/support/token.rb +1 -0
- data/spec/support/vcr.rb +5 -0
- metadata +226 -52
- data/examples/hi_real_time/Gemfile +0 -5
- data/examples/hi_real_time/hi.gif +0 -0
- data/examples/hi_real_time/hi.rb +0 -37
- data/examples/hi_real_time_async_celluloid/Gemfile +0 -6
- data/examples/hi_real_time_async_celluloid/Procfile +0 -2
- data/examples/hi_real_time_async_celluloid/hi.rb +0 -35
- data/examples/hi_real_time_async_eventmachine/Gemfile +0 -6
- data/examples/hi_real_time_async_eventmachine/Procfile +0 -2
- data/examples/hi_real_time_async_eventmachine/hi.rb +0 -35
- data/lib/slack/real_time/concurrency/celluloid.rb +0 -103
- data/lib/slack/real_time/concurrency/eventmachine.rb +0 -66
- data/lib/slack/web/api/patches/chat.1.text-attachments-required.patch +0 -13
- data/lib/slack/web/api/patches/chat.2.attachments-json.patch +0 -17
- data/lib/slack/web/api/patches/chat.3.update-attachments-support.patch +0 -21
- data/lib/slack/web/api/patches/chat.4.postEphemeral-attachments-support.patch +0 -17
- data/lib/slack/web/api/patches/chat.5.postEphemeral-text-or-attachments.patch +0 -13
- data/screenshots/register-bot.png +0 -0
- data/spec/slack/real_time/concurrency/celluloid_spec.rb +0 -106
- data/spec/slack/real_time/concurrency/eventmachine_spec.rb +0 -47
- data/spec/slack/web/api/endpoints/custom_specs/channels_spec.rb +0 -11
- data/spec/slack/web/api/endpoints/custom_specs/groups_spec.rb +0 -11
- data/spec/slack/web/api/errors/service_unavailable_spec.rb +0 -14
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
require 'spec_helper'
|
|
3
|
+
|
|
4
|
+
RSpec.describe Slack::Web::Api::Endpoints::Groups do
|
|
5
|
+
let(:client) { Slack::Web::Client.new }
|
|
6
|
+
|
|
7
|
+
context 'groups' do
|
|
8
|
+
it 'info', vcr: { cassette_name: 'web/conversations_info' } do
|
|
9
|
+
json = client.conversations_info(channel: '#mpdm-dblock--rubybot--player1-1')
|
|
10
|
+
expect(json.channel.name).to eq 'mpdm-dblock--rubybot--player1-1'
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
require 'spec_helper'
|
|
2
3
|
|
|
3
4
|
RSpec.describe Slack::Web::Api::Endpoints::Dialog do
|
|
4
5
|
let(:client) { Slack::Web::Client.new }
|
|
6
|
+
|
|
5
7
|
context 'dialog_open' do
|
|
6
8
|
it 'automatically converts dialog into JSON' do
|
|
7
9
|
expect(client).to receive(:post).with(
|
|
@@ -14,14 +16,20 @@ RSpec.describe Slack::Web::Api::Endpoints::Dialog do
|
|
|
14
16
|
|
|
15
17
|
context 'arguments' do
|
|
16
18
|
it 'requires dialog' do
|
|
17
|
-
expect { client.dialog_open(trigger_id: '123') }.to
|
|
19
|
+
expect { client.dialog_open(trigger_id: '123') }.to(
|
|
20
|
+
raise_error(ArgumentError, /Required arguments :dialog missing/)
|
|
21
|
+
)
|
|
18
22
|
end
|
|
19
23
|
it 'requires trigger_id' do
|
|
20
|
-
expect { client.dialog_open(dialog: []) }.to
|
|
24
|
+
expect { client.dialog_open(dialog: []) }.to(
|
|
25
|
+
raise_error(ArgumentError, /Required arguments :trigger_id missing/)
|
|
26
|
+
)
|
|
21
27
|
end
|
|
22
28
|
it 'likes both dialog and trigger_id' do
|
|
23
|
-
expect(client).to
|
|
24
|
-
|
|
29
|
+
expect(client).to(
|
|
30
|
+
receive(:post).with('dialog.open', hash_including(trigger_id: '123', dialog: '[]'))
|
|
31
|
+
)
|
|
32
|
+
expect { client.dialog_open(dialog: [], trigger_id: '123') }.not_to raise_error
|
|
25
33
|
end
|
|
26
34
|
end
|
|
27
35
|
end
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
require 'spec_helper'
|
|
2
3
|
|
|
3
4
|
RSpec.describe Slack::Web::Api::Endpoints::Users do
|
|
4
5
|
let(:client) { Slack::Web::Client.new }
|
|
6
|
+
|
|
5
7
|
context 'users' do
|
|
6
8
|
it 'list', vcr: { cassette_name: 'web/users_list' } do
|
|
7
9
|
json = client.users_list(presence: true)
|
|
@@ -9,7 +11,8 @@ RSpec.describe Slack::Web::Api::Endpoints::Users do
|
|
|
9
11
|
expect(json.members.size).to eq 9
|
|
10
12
|
expect(json.members.first.presence).to eq 'away'
|
|
11
13
|
end
|
|
12
|
-
|
|
14
|
+
|
|
15
|
+
it 'paginated list', vcr: { cassette_name: 'web/paginated_users_list' } do
|
|
13
16
|
members = []
|
|
14
17
|
client.users_list(presence: true, limit: 5) do |json|
|
|
15
18
|
expect(json.ok).to be true
|
|
@@ -17,10 +20,12 @@ RSpec.describe Slack::Web::Api::Endpoints::Users do
|
|
|
17
20
|
end
|
|
18
21
|
expect(members.size).to eq 23
|
|
19
22
|
end
|
|
23
|
+
|
|
20
24
|
it 'info', vcr: { cassette_name: 'web/users_info' } do
|
|
21
25
|
json = client.users_info(user: '@aws')
|
|
22
26
|
expect(json.user.name).to eq 'aws'
|
|
23
27
|
end
|
|
28
|
+
|
|
24
29
|
if defined?(Picky)
|
|
25
30
|
it 'search', vcr: { cassette_name: 'web/users_info' } do
|
|
26
31
|
json = client.users_search(user: 'aws')
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
require 'spec_helper'
|
|
3
|
+
|
|
4
|
+
RSpec.describe Slack::Web::Api::Endpoints::Views do
|
|
5
|
+
let(:client) { Slack::Web::Client.new }
|
|
6
|
+
let(:trigger_id) { '12345.98765.abcd2358fdea' }
|
|
7
|
+
|
|
8
|
+
describe 'views_open' do
|
|
9
|
+
context 'with a hash for view' do
|
|
10
|
+
let(:view_str) { '{"celery":"man"}' }
|
|
11
|
+
|
|
12
|
+
it 'automatically converts view into JSON' do
|
|
13
|
+
expect(client).to receive(:post).with('views.open', trigger_id: trigger_id, view: view_str)
|
|
14
|
+
client.views_open(trigger_id: trigger_id, view: { celery: 'man' })
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
context 'with a string for view' do
|
|
19
|
+
let(:view_str) { 'celery man' }
|
|
20
|
+
|
|
21
|
+
it 'leaves view as is' do
|
|
22
|
+
expect(client).to receive(:post).with('views.open', trigger_id: trigger_id, view: view_str)
|
|
23
|
+
client.views_open(trigger_id: trigger_id, view: 'celery man')
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
describe 'views_publish' do
|
|
29
|
+
let(:user_id) { 'U1234' }
|
|
30
|
+
|
|
31
|
+
context 'with a hash for view' do
|
|
32
|
+
let(:view_str) { '{"celery":"man"}' }
|
|
33
|
+
|
|
34
|
+
it 'automatically converts view into JSON' do
|
|
35
|
+
expect(client).to receive(:post).with('views.publish',
|
|
36
|
+
user_id: user_id,
|
|
37
|
+
trigger_id: trigger_id,
|
|
38
|
+
view: view_str)
|
|
39
|
+
client.views_publish(user_id: user_id, trigger_id: trigger_id, view: { celery: 'man' })
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
context 'with a string for view' do
|
|
44
|
+
let(:view_str) { 'celery man' }
|
|
45
|
+
|
|
46
|
+
it 'leaves view as is' do
|
|
47
|
+
expect(client).to receive(:post).with('views.publish',
|
|
48
|
+
user_id: user_id,
|
|
49
|
+
trigger_id: trigger_id,
|
|
50
|
+
view: view_str)
|
|
51
|
+
client.views_publish(user_id: user_id, trigger_id: trigger_id, view: 'celery man')
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
describe 'views_push' do
|
|
57
|
+
context 'with a hash for view' do
|
|
58
|
+
let(:view_str) { '{"celery":"man"}' }
|
|
59
|
+
|
|
60
|
+
it 'automatically converts view into JSON' do
|
|
61
|
+
expect(client).to receive(:post).with('views.push', trigger_id: trigger_id, view: view_str)
|
|
62
|
+
client.views_push(trigger_id: trigger_id, view: { celery: 'man' })
|
|
63
|
+
end
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
context 'with a string for view' do
|
|
67
|
+
let(:view_str) { 'celery man' }
|
|
68
|
+
|
|
69
|
+
it 'leaves view as is' do
|
|
70
|
+
expect(client).to receive(:post).with('views.push', trigger_id: trigger_id, view: view_str)
|
|
71
|
+
client.views_push(trigger_id: trigger_id, view: 'celery man')
|
|
72
|
+
end
|
|
73
|
+
end
|
|
74
|
+
end
|
|
75
|
+
|
|
76
|
+
describe 'views_update' do
|
|
77
|
+
context 'with a hash for view' do
|
|
78
|
+
let(:view_str) { '{"celery":"man"}' }
|
|
79
|
+
|
|
80
|
+
it 'automatically converts view into JSON' do
|
|
81
|
+
expect(client).to receive(:post).with('views.update', view: view_str)
|
|
82
|
+
client.views_update(view: { celery: 'man' })
|
|
83
|
+
end
|
|
84
|
+
end
|
|
85
|
+
|
|
86
|
+
context 'with a string for view' do
|
|
87
|
+
let(:view_str) { 'celery man' }
|
|
88
|
+
|
|
89
|
+
it 'leaves view as is' do
|
|
90
|
+
expect(client).to receive(:post).with('views.update', view: view_str)
|
|
91
|
+
client.views_update(view: 'celery man')
|
|
92
|
+
end
|
|
93
|
+
end
|
|
94
|
+
end
|
|
95
|
+
end
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
# This file was auto-generated by lib/tasks/web.rake
|
|
2
3
|
|
|
3
4
|
require 'spec_helper'
|
|
@@ -9,4 +10,9 @@ RSpec.describe Slack::Web::Api::Endpoints::Dnd do
|
|
|
9
10
|
expect { client.dnd_setSnooze }.to raise_error ArgumentError, /Required arguments :num_minutes missing/
|
|
10
11
|
end
|
|
11
12
|
end
|
|
13
|
+
context 'dnd_teamInfo' do
|
|
14
|
+
it 'requires users' do
|
|
15
|
+
expect { client.dnd_teamInfo }.to raise_error ArgumentError, /Required arguments :users missing/
|
|
16
|
+
end
|
|
17
|
+
end
|
|
12
18
|
end
|
|
@@ -1,34 +1,16 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
# This file was auto-generated by lib/tasks/web.rake
|
|
2
3
|
|
|
3
4
|
require 'spec_helper'
|
|
4
5
|
|
|
5
6
|
RSpec.describe Slack::Web::Api::Endpoints::FilesComments do
|
|
6
7
|
let(:client) { Slack::Web::Client.new }
|
|
7
|
-
context 'files.comments_add' do
|
|
8
|
-
it 'requires comment' do
|
|
9
|
-
expect { client.files_comments_add(file: 'F1234467890') }.to raise_error ArgumentError, /Required arguments :comment missing/
|
|
10
|
-
end
|
|
11
|
-
it 'requires file' do
|
|
12
|
-
expect { client.files_comments_add(comment: 'Everyone should take a moment to read this file.') }.to raise_error ArgumentError, /Required arguments :file missing/
|
|
13
|
-
end
|
|
14
|
-
end
|
|
15
8
|
context 'files.comments_delete' do
|
|
16
9
|
it 'requires file' do
|
|
17
|
-
expect { client.files_comments_delete(id:
|
|
18
|
-
end
|
|
19
|
-
it 'requires id' do
|
|
20
|
-
expect { client.files_comments_delete(file: 'F1234567890') }.to raise_error ArgumentError, /Required arguments :id missing/
|
|
21
|
-
end
|
|
22
|
-
end
|
|
23
|
-
context 'files.comments_edit' do
|
|
24
|
-
it 'requires comment' do
|
|
25
|
-
expect { client.files_comments_edit(file: 'F1234567890', id: 'Fc1234567890') }.to raise_error ArgumentError, /Required arguments :comment missing/
|
|
26
|
-
end
|
|
27
|
-
it 'requires file' do
|
|
28
|
-
expect { client.files_comments_edit(comment: 'Everyone should take a moment to read this file, seriously.', id: 'Fc1234567890') }.to raise_error ArgumentError, /Required arguments :file missing/
|
|
10
|
+
expect { client.files_comments_delete(id: %q[Fc1234567890]) }.to raise_error ArgumentError, /Required arguments :file missing/
|
|
29
11
|
end
|
|
30
12
|
it 'requires id' do
|
|
31
|
-
expect { client.
|
|
13
|
+
expect { client.files_comments_delete(file: %q[F1234567890]) }.to raise_error ArgumentError, /Required arguments :id missing/
|
|
32
14
|
end
|
|
33
15
|
end
|
|
34
16
|
end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
# This file was auto-generated by lib/tasks/web.rake
|
|
3
|
+
|
|
4
|
+
require 'spec_helper'
|
|
5
|
+
|
|
6
|
+
RSpec.describe Slack::Web::Api::Endpoints::FilesRemote do
|
|
7
|
+
let(:client) { Slack::Web::Client.new }
|
|
8
|
+
context 'files.remote_add' do
|
|
9
|
+
it 'requires external_id' do
|
|
10
|
+
expect { client.files_remote_add(external_url: %q[http://example.com/my_cloud_service_file/abc123], title: %q[Danger, High Voltage!]) }.to raise_error ArgumentError, /Required arguments :external_id missing/
|
|
11
|
+
end
|
|
12
|
+
it 'requires external_url' do
|
|
13
|
+
expect { client.files_remote_add(external_id: %q[123456], title: %q[Danger, High Voltage!]) }.to raise_error ArgumentError, /Required arguments :external_url missing/
|
|
14
|
+
end
|
|
15
|
+
it 'requires title' do
|
|
16
|
+
expect { client.files_remote_add(external_id: %q[123456], external_url: %q[http://example.com/my_cloud_service_file/abc123]) }.to raise_error ArgumentError, /Required arguments :title missing/
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
context 'files.remote_share' do
|
|
20
|
+
it 'requires channels' do
|
|
21
|
+
expect { client.files_remote_share }.to raise_error ArgumentError, /Required arguments :channels missing/
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
# This file was auto-generated by lib/tasks/web.rake
|
|
2
3
|
|
|
3
4
|
require 'spec_helper'
|
|
@@ -11,10 +12,10 @@ RSpec.describe Slack::Web::Api::Endpoints::Files do
|
|
|
11
12
|
end
|
|
12
13
|
context 'files_edit' do
|
|
13
14
|
it 'requires file' do
|
|
14
|
-
expect { client.files_edit(title:
|
|
15
|
+
expect { client.files_edit(title: %q[Brand new title]) }.to raise_error ArgumentError, /Required arguments :file missing/
|
|
15
16
|
end
|
|
16
17
|
it 'requires title' do
|
|
17
|
-
expect { client.files_edit(file:
|
|
18
|
+
expect { client.files_edit(file: %q[F2147483862]) }.to raise_error ArgumentError, /Required arguments :title missing/
|
|
18
19
|
end
|
|
19
20
|
end
|
|
20
21
|
context 'files_info' do
|
|
@@ -29,10 +30,10 @@ RSpec.describe Slack::Web::Api::Endpoints::Files do
|
|
|
29
30
|
end
|
|
30
31
|
context 'files_share' do
|
|
31
32
|
it 'requires file' do
|
|
32
|
-
expect { client.files_share(channel:
|
|
33
|
+
expect { client.files_share(channel: %q[C1234567890]) }.to raise_error ArgumentError, /Required arguments :file missing/
|
|
33
34
|
end
|
|
34
35
|
it 'requires channel' do
|
|
35
|
-
expect { client.files_share(file:
|
|
36
|
+
expect { client.files_share(file: %q[F2147483862]) }.to raise_error ArgumentError, /Required arguments :channel missing/
|
|
36
37
|
end
|
|
37
38
|
end
|
|
38
39
|
context 'files_sharedPublicURL' do
|
|
@@ -1,38 +1,8 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
# This file was auto-generated by lib/tasks/web.rake
|
|
2
3
|
|
|
3
4
|
require 'spec_helper'
|
|
4
5
|
|
|
5
6
|
RSpec.describe Slack::Web::Api::Endpoints::Im do
|
|
6
7
|
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
|
-
context 'im_replies' do
|
|
31
|
-
it 'requires channel' do
|
|
32
|
-
expect { client.im_replies(thread_ts: '1234567890.123456') }.to raise_error ArgumentError, /Required arguments :channel missing/
|
|
33
|
-
end
|
|
34
|
-
it 'requires thread_ts' do
|
|
35
|
-
expect { client.im_replies(channel: 'C1234567890') }.to raise_error ArgumentError, /Required arguments :thread_ts missing/
|
|
36
|
-
end
|
|
37
|
-
end
|
|
38
8
|
end
|
|
@@ -1,38 +1,8 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
# This file was auto-generated by lib/tasks/web.rake
|
|
2
3
|
|
|
3
4
|
require 'spec_helper'
|
|
4
5
|
|
|
5
6
|
RSpec.describe Slack::Web::Api::Endpoints::Mpim do
|
|
6
7
|
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
|
-
context 'mpim_replies' do
|
|
31
|
-
it 'requires channel' do
|
|
32
|
-
expect { client.mpim_replies(thread_ts: '1234567890.123456') }.to raise_error ArgumentError, /Required arguments :channel missing/
|
|
33
|
-
end
|
|
34
|
-
it 'requires thread_ts' do
|
|
35
|
-
expect { client.mpim_replies(channel: 'C1234567890') }.to raise_error ArgumentError, /Required arguments :thread_ts missing/
|
|
36
|
-
end
|
|
37
|
-
end
|
|
38
8
|
end
|
|
@@ -1,29 +1,19 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
# This file was auto-generated by lib/tasks/web.rake
|
|
2
3
|
|
|
3
4
|
require 'spec_helper'
|
|
4
5
|
|
|
5
6
|
RSpec.describe Slack::Web::Api::Endpoints::Oauth do
|
|
6
7
|
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
8
|
context 'oauth_token' do
|
|
19
9
|
it 'requires client_id' do
|
|
20
|
-
expect { client.oauth_token(client_secret:
|
|
10
|
+
expect { client.oauth_token(client_secret: %q[33fea0113f5b1], code: %q[ccdaa72ad]) }.to raise_error ArgumentError, /Required arguments :client_id missing/
|
|
21
11
|
end
|
|
22
12
|
it 'requires client_secret' do
|
|
23
|
-
expect { client.oauth_token(client_id:
|
|
13
|
+
expect { client.oauth_token(client_id: %q[4b39e9-752c4], code: %q[ccdaa72ad]) }.to raise_error ArgumentError, /Required arguments :client_secret missing/
|
|
24
14
|
end
|
|
25
15
|
it 'requires code' do
|
|
26
|
-
expect { client.oauth_token(client_id:
|
|
16
|
+
expect { client.oauth_token(client_id: %q[4b39e9-752c4], client_secret: %q[33fea0113f5b1]) }.to raise_error ArgumentError, /Required arguments :code missing/
|
|
27
17
|
end
|
|
28
18
|
end
|
|
29
19
|
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
# This file was auto-generated by lib/tasks/web.rake
|
|
3
|
+
|
|
4
|
+
require 'spec_helper'
|
|
5
|
+
|
|
6
|
+
RSpec.describe Slack::Web::Api::Endpoints::OauthV2 do
|
|
7
|
+
let(:client) { Slack::Web::Client.new }
|
|
8
|
+
context 'oauth.v2_access' do
|
|
9
|
+
it 'requires code' do
|
|
10
|
+
expect { client.oauth_v2_access }.to raise_error ArgumentError, /Required arguments :code missing/
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
1
2
|
# This file was auto-generated by lib/tasks/web.rake
|
|
2
3
|
|
|
3
4
|
require 'spec_helper'
|
|
@@ -5,8 +6,14 @@ require 'spec_helper'
|
|
|
5
6
|
RSpec.describe Slack::Web::Api::Endpoints::Reactions do
|
|
6
7
|
let(:client) { Slack::Web::Client.new }
|
|
7
8
|
context 'reactions_add' do
|
|
9
|
+
it 'requires channel' do
|
|
10
|
+
expect { client.reactions_add(name: %q[thumbsup], timestamp: %q[1234567890.123456]) }.to raise_error ArgumentError, /Required arguments :channel missing/
|
|
11
|
+
end
|
|
8
12
|
it 'requires name' do
|
|
9
|
-
expect { client.reactions_add }.to raise_error ArgumentError, /Required arguments :name missing/
|
|
13
|
+
expect { client.reactions_add(channel: %q[C1234567890], timestamp: %q[1234567890.123456]) }.to raise_error ArgumentError, /Required arguments :name missing/
|
|
14
|
+
end
|
|
15
|
+
it 'requires timestamp' do
|
|
16
|
+
expect { client.reactions_add(channel: %q[C1234567890], name: %q[thumbsup]) }.to raise_error ArgumentError, /Required arguments :timestamp missing/
|
|
10
17
|
end
|
|
11
18
|
end
|
|
12
19
|
context 'reactions_remove' do
|