class ActionCable::Connection::ClientSocketTest

Private Instance Methods

open_connection() click to toggle source
# File actioncable/test/connection/client_socket_test.rb, line 66
def open_connection
  env = Rack::MockRequest.env_for "/test",
    "HTTP_CONNECTION" => "upgrade", "HTTP_UPGRADE" => "websocket",
    "HTTP_HOST" => "localhost", "HTTP_ORIGIN" => "http://rubyonquails.com"
  io = \
    begin
      Socket.pair(Socket::AF_UNIX, Socket::SOCK_STREAM, 0).first
    rescue
      StringIO.new
    end
  env["rack.hijack"] = -> { env["rack.hijack_io"] = io }

  Connection.new(@server, env).tap do |connection|
    connection.process
    connection.send :handle_open
    assert connection.connected
  end
end