diff --git a/lib/action_cable/subscription_adapter/solid_cable.rb b/lib/action_cable/subscription_adapter/solid_cable.rb index 401c273..149d411 100644 --- a/lib/action_cable/subscription_adapter/solid_cable.rb +++ b/lib/action_cable/subscription_adapter/solid_cable.rb @@ -96,11 +96,13 @@ def channels end def broadcast_messages - ::SolidCable::Message.broadcastable(channels, last_id). - each do |message| - broadcast(message.channel, message.payload) - self.last_id = message.id + Rails.application.reloader.wrap do + ::SolidCable::Message.broadcastable(channels, last_id). + each do |message| + broadcast(message.channel, message.payload) + self.last_id = message.id end + end end def with_polling_volume diff --git a/test/config_stubs.rb b/test/config_stubs.rb index f36f8da..a1558b0 100644 --- a/test/config_stubs.rb +++ b/test/config_stubs.rb @@ -12,6 +12,16 @@ def initialize(**) def config_for(_file) @config end + + def reloader + @reloader ||= ReloaderStub.new + end + + class ReloaderStub + def wrap(&block) + block.call + end + end end def with_cable_config(**)