Я играю с tweetstream gem, что упрощает взаимодействие с Twitter streaming API. Я потоковом все твиты так же, как в примере кода, указанного на странице драгоценного камня:Как насмехаться с потоковым API с RSpec?
TweetStream::Client.new.sample do |status|
puts "#{status.text}"
end
Я поставил это в методе #capture
с некоторой простой логикой, чтобы запустить поток всего за несколько секунд и захватить все твиты (строки status.text
) в массиве.
Я хочу написать модульные тесты для #capture
. Как я мог бы отключить поток твитов? Я предполагаю, что у меня будут твиты в магазине либо в файле, либо в объекте StringIO
, но я не знаю, как писать макет, чтобы обрабатывать все TCP-взаимодействие с потоковым API. Я не уверен, должен ли я использовать видеомагнитофон здесь.