зеркало из
https://github.com/glebtv/telegram-bot.git
synced 2026-09-04 10:15:50 +03:00
Add specs for #edit_message
Этот коммит содержится в:
@@ -42,8 +42,8 @@ module Telegram
|
|||||||
# Edit message from callback query.
|
# Edit message from callback query.
|
||||||
def edit_message(type, params = {})
|
def edit_message(type, params = {})
|
||||||
params =
|
params =
|
||||||
if query_id = payload['inline_message_id'] # rubocop:disable AssignmentInCondition
|
if message_id = payload['inline_message_id'] # rubocop:disable AssignmentInCondition
|
||||||
params.merge(inline_query_id: query_id)
|
params.merge(inline_message_id: message_id)
|
||||||
elsif message = payload['message'] # rubocop:disable AssignmentInCondition
|
elsif message = payload['message'] # rubocop:disable AssignmentInCondition
|
||||||
params.merge(chat_id: message['chat']['id'], message_id: message['message_id'])
|
params.merge(chat_id: message['chat']['id'], message_id: message['message_id'])
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -50,6 +50,30 @@ RSpec.describe Telegram::Bot::UpdatesController do
|
|||||||
end
|
end
|
||||||
|
|
||||||
describe '#edit_message' do
|
describe '#edit_message' do
|
||||||
skip 'TODO'
|
subject { controller.edit_message(type, params) }
|
||||||
|
let(:type) { :reply_markup }
|
||||||
|
|
||||||
|
it { expect { subject }.to raise_error(/Can not edit message without/) }
|
||||||
|
|
||||||
|
context 'when inline_message_id is present' do
|
||||||
|
let(:payload) { {inline_message_id: double(:message_id)} }
|
||||||
|
it 'sets inline_message_id' do
|
||||||
|
expect(bot).to receive("edit_message_#{type}").with(params.merge(
|
||||||
|
inline_message_id: payload[:inline_message_id],
|
||||||
|
)) { result }
|
||||||
|
should eq result
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
context 'when message is present' do
|
||||||
|
let(:payload) { {message: super().merge(chat: chat)} }
|
||||||
|
it 'sets chat_id & message_id' do
|
||||||
|
expect(bot).to receive("edit_message_#{type}").with(params.merge(
|
||||||
|
message_id: payload[:message][:message_id],
|
||||||
|
chat_id: payload[:message][:chat]['id'],
|
||||||
|
)) { result }
|
||||||
|
should eq result
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
Ссылка в новой задаче
Block a user