- A
- P
- S
- T
- U
Constants
| CHANNEL_IDENTIFIER | = | "test_stub" |
Attributes
| [R] | connection | |
| [R] | subscription |
Instance Public methods
assert_broadcast_on(stream_or_object, *args) Link
Source: show
# File actioncable/lib/action_cable/channel/test_case.rb, line 276 def assert_broadcast_on(stream_or_object, *args) super(broadcasting_for(stream_or_object), *args) end
assert_broadcasts(stream_or_object, *args) Link
Enhance TestHelper assertions to handle non-String broadcastings
Source: show
# File actioncable/lib/action_cable/channel/test_case.rb, line 272 def assert_broadcasts(stream_or_object, *args) super(broadcasting_for(stream_or_object), *args) end
assert_has_stream(stream) Link
Asserts that the specified stream has been started.
def test_assert_started_stream
subscribe
assert_has_stream 'messages'
end
Source: show
# File actioncable/lib/action_cable/channel/test_case.rb, line 298 def assert_has_stream(stream) assert subscription.streams.include?(stream), "Stream #{stream} has not been started" end
assert_has_stream_for(object) Link
Asserts that the specified stream for a model has started.
def test_assert_started_stream_for
subscribe id: 42
assert_has_stream_for User.find(42)
end
Source: show
# File actioncable/lib/action_cable/channel/test_case.rb, line 309 def assert_has_stream_for(object) assert_has_stream(broadcasting_for(object)) end
assert_no_streams() Link
Asserts that no streams have been started.
def test_assert_no_started_stream
subscribe
assert_no_streams
end
Source: show
# File actioncable/lib/action_cable/channel/test_case.rb, line 287 def assert_no_streams assert subscription.streams.empty?, "No streams started was expected, but #{subscription.streams.count} found" end
perform(action, data = {}) Link
Perform action on a channel.
NOTE: Must be subscribed.
Source: show
# File actioncable/lib/action_cable/channel/test_case.rb, line 259 def perform(action, data = {}) check_subscribed! subscription.perform_action(data.stringify_keys.merge("action" => action.to_s)) end
stub_connection(identifiers = {}) Link
Set up test connection with the specified identifiers:
class ApplicationCable < ActionCable::Connection::Base
identified_by :user, :token
end
stub_connection(user: users[:john], token: 'my-secret-token')
Source: show
# File actioncable/lib/action_cable/channel/test_case.rb, line 237 def stub_connection(identifiers = {}) @connection = ConnectionStub.new(identifiers) end
subscribe(params = {}) Link
Subscribe to the channel under test. Optionally pass subscription parameters as a Hash.
Source: show
# File actioncable/lib/action_cable/channel/test_case.rb, line 242 def subscribe(params = {}) @connection ||= stub_connection @subscription = self.class.channel_class.new(connection, CHANNEL_IDENTIFIER, params.with_indifferent_access) @subscription.singleton_class.include(ChannelStub) @subscription.subscribe_to_channel @subscription end