Class: ActionCable::Connection::TestSocket
| Relationships & Source Files | |
| Namespace Children | |
|
Classes:
| |
| Inherits: | Object |
| Defined in: | actioncable/lib/action_cable/connection/test_case.rb |
Class Method Summary
Instance Attribute Summary
- #closed readonly
- #env readonly
- #logger readonly
- #request readonly
- #transmissions readonly
Instance Method Summary
Constructor Details
.new(request) ⇒ TestSocket
# File 'actioncable/lib/action_cable/connection/test_case.rb', line 85
def initialize(request) inner_logger = ActiveSupport::Logger.new(StringIO.new) tagged_logging = ActiveSupport::TaggedLogging.new(inner_logger) @logger = ActionCable::Server::TaggedLoggerProxy.new(tagged_logging, tags: []) @request = request @env = request.env @connection = nil @closed = false @transmissions = [] end
Class Method Details
.build_request(path, params: nil, headers: {}, session: {}, env: {}, cookies: nil)
[ GitHub ]# File 'actioncable/lib/action_cable/connection/test_case.rb', line 62
def build_request(path, params: nil, headers: {}, session: {}, env: {}, cookies: nil) wrapped_headers = ActionDispatch::Http::Headers.from_hash(headers) uri = URI.parse(path) query_string = params.nil? ? uri.query : params.to_query request_env = { "QUERY_STRING" => query_string, "PATH_INFO" => uri.path }.merge(env) if wrapped_headers.present? ActionDispatch::Http::Headers.from_hash(request_env).merge!(wrapped_headers) end Request.create(request_env).tap do |request| request.session = session.with_indifferent_access request. = end end
Instance Attribute Details
#closed (readonly)
[ GitHub ]# File 'actioncable/lib/action_cable/connection/test_case.rb', line 59
attr_reader :logger, :request, :transmissions, :closed, :env
#env (readonly)
[ GitHub ]# File 'actioncable/lib/action_cable/connection/test_case.rb', line 59
attr_reader :logger, :request, :transmissions, :closed, :env
#logger (readonly)
[ GitHub ]# File 'actioncable/lib/action_cable/connection/test_case.rb', line 59
attr_reader :logger, :request, :transmissions, :closed, :env
#request (readonly)
[ GitHub ]# File 'actioncable/lib/action_cable/connection/test_case.rb', line 59
attr_reader :logger, :request, :transmissions, :closed, :env
#transmissions (readonly)
[ GitHub ]Instance Method Details
#close
[ GitHub ]# File 'actioncable/lib/action_cable/connection/test_case.rb', line 100
def close @closed = true end
#perform_work(receiver)
[ GitHub ]# File 'actioncable/lib/action_cable/connection/test_case.rb', line 104
def perform_work(receiver, ...) receiver.public_send(...) end
#transmit(data)
[ GitHub ]# File 'actioncable/lib/action_cable/connection/test_case.rb', line 96
def transmit(data) @transmissions << data.with_indifferent_access end