diff options
author | Kasper Timm Hansen <kaspth@gmail.com> | 2019-01-24 23:40:33 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-01-24 23:40:33 +0100 |
commit | 36c840057fb46c09457a8b091d2db6351d2efeef (patch) | |
tree | 81550fc640989953b8311d1c94584b36f716c752 /guides | |
parent | 87626a60426e7b8aa8e4048d7d4b7463ba62bd96 (diff) | |
parent | cfe65cb478a44f19f3b4562cd1cf3c99d2cb930b (diff) | |
download | rails-36c840057fb46c09457a8b091d2db6351d2efeef.tar.gz rails-36c840057fb46c09457a8b091d2db6351d2efeef.tar.bz2 rails-36c840057fb46c09457a8b091d2db6351d2efeef.zip |
Merge pull request #35021 from palkan/refactor/broadcasting-for-testing
Action Cable: move channel_name to Channel.broadcasting_for
Diffstat (limited to 'guides')
-rw-r--r-- | guides/source/testing.md | 31 |
1 files changed, 29 insertions, 2 deletions
diff --git a/guides/source/testing.md b/guides/source/testing.md index f9661c52a0..61353e8e7d 100644 --- a/guides/source/testing.md +++ b/guides/source/testing.md @@ -1806,11 +1806,11 @@ require "test_helper" class WebNotificationsChannelTest < ActionCable::Channel::TestCase test "subscribes and stream for user" do - stub_connection current_user: users[:john] + stub_connection current_user: users(:john) subscribe - assert_has_stream_for users[:john] + assert_has_stream_for users(:john) end end ``` @@ -1837,6 +1837,33 @@ class ProductTest < ActionCable::TestCase end ``` +If you want to test the broadcasting made with `Channel.broadcast_to`, you shoud use +`Channel.broadcasting_for` to generate an underlying stream name: + +```ruby +# app/jobs/chat_relay_job.rb +class ChatRelayJob < ApplicationJob + def perform_later(room, message) + ChatChannel.broadcast_to room, text: message + end +end + +# test/jobs/chat_relay_job_test.rb +require 'test_helper' + +class ChatRelayJobTest < ActiveJob::TestCase + include ActionCable::TestHelper + + test "broadcast message to room" do + room = rooms(:all) + + assert_broadcast_on(ChatChannel.broadcasting_for(room), text: "Hi!") do + ChatRelayJob.perform_now(room, "Hi!") + end + end +end +``` + Additional Testing Resources ---------------------------- |