Sha256: 10e0828269f359d6e109daeed8b19319c99c74e242b8da30dc2e122282e2b328
Contents?: true
Size: 857 Bytes
Versions: 5
Compression:
Stored size: 857 Bytes
Contents
# frozen_string_literal: true module Anycable # Socket mock to be used with application connection class Socket attr_reader :transmissions, :env def initialize(env: nil) @transmissions = [] @env = env end def transmit(websocket_message) transmissions << websocket_message end def subscribe(_channel, broadcasting) streams << broadcasting end def unsubscribe(_channel, _broadcasting) raise NotImplementedError end def unsubscribe_from_all(_channel) @stop_all_streams = true end def streams @streams ||= [] end def close @closed = true @transmissions.clear @streams&.clear @stop_all_streams = true end def closed? @closed == true end def stop_streams? @stop_all_streams == true end end end
Version data entries
5 entries across 5 versions & 1 rubygems