Class: ActionCable::SubscriptionAdapter::Test

Inherits:
Async show all
Defined in:
actioncable/lib/action_cable/subscription_adapter/test.rb

Overview

Test adapter for Action Cable

The test adapter should be used only in testing. Along with ActionCable::TestHelper it makes a great tool to test your Rails application.

To use the test adapter set adapter value to test in your config/cable.yml file.

NOTE: Test adapter extends the ActionCable::SubscriptionAdapter::Async adapter, so it could be used in system tests too.

Instance Attribute Summary

Attributes inherited from Base

#logger, #server

Instance Method Summary collapse

Methods inherited from Inline

#initialize, #shutdown, #subscribe, #unsubscribe

Methods inherited from Base

#identifier, #initialize, #shutdown, #subscribe, #unsubscribe

Constructor Details

This class inherits a constructor from ActionCable::SubscriptionAdapter::Inline

Instance Method Details

#broadcast(channel, payload) ⇒ Object



15
16
17
18
# File 'actioncable/lib/action_cable/subscription_adapter/test.rb', line 15

def broadcast(channel, payload)
  broadcasts(channel) << payload
  super
end

#broadcasts(channel) ⇒ Object



20
21
22
# File 'actioncable/lib/action_cable/subscription_adapter/test.rb', line 20

def broadcasts(channel)
  channels_data[channel] ||= []
end

#clearObject



28
29
30
# File 'actioncable/lib/action_cable/subscription_adapter/test.rb', line 28

def clear
  @channels_data = nil
end

#clear_messages(channel) ⇒ Object



24
25
26
# File 'actioncable/lib/action_cable/subscription_adapter/test.rb', line 24

def clear_messages(channel)
  channels_data[channel] = []
end