class Pakyow::TestHelp::Simulation

Constants

REDIRECT_STATUSES

Attributes

app[R]

Public Class Methods

new(app) click to toggle source
# File pakyow-test/lib/pakyow/test_help/simulation.rb, line 15
def initialize(app)
  @app = app
end

Public Instance Methods

log() click to toggle source
# File pakyow-test/lib/pakyow/test_help/simulation.rb, line 61
def log
  app.request.env['rack.logger']
end
pushed?(message = nil, to: nil) click to toggle source
# File pakyow-test/lib/pakyow/test_help/simulation.rb, line 57
def pushed?(message = nil, to: nil)
  socket.pushed?(message, to: to)
end
redirected?(to: nil, as: nil) click to toggle source
# File pakyow-test/lib/pakyow/test_help/simulation.rb, line 19
def redirected?(to: nil, as: nil)
  return false unless REDIRECT_STATUSES.include?(response.status)
  return false unless response.headers.key?('Location')

  unless to.nil?
    path = router.path(to)
    return false if response.headers['Location'] != path
  end

  unless as.nil?
    return status == as
  end

  return true
end
rerouted?(to: nil) click to toggle source
# File pakyow-test/lib/pakyow/test_help/simulation.rb, line 35
def rerouted?(to: nil)
  return false if request.first_path == request.path

  unless to.nil?
    return request.path == router.path(to)
  end

  return true
end
subscribed?(to: nil) click to toggle source
# File pakyow-test/lib/pakyow/test_help/simulation.rb, line 45
def subscribed?(to: nil)
  if to.nil?
    !channels.empty?
  else
    channels.include?(to.to_sym)
  end
end
unsubscribed?(to: nil) click to toggle source
# File pakyow-test/lib/pakyow/test_help/simulation.rb, line 53
def unsubscribed?(to: nil)
  !subscribed?(to: to)
end

Private Instance Methods

channels() click to toggle source
# File pakyow-test/lib/pakyow/test_help/simulation.rb, line 71
def channels
  socket.delegate.registry.channels_for_key(socket_digest(socket_connection_id))
end
router() click to toggle source
# File pakyow-test/lib/pakyow/test_help/simulation.rb, line 67
def router
  Pakyow::Router.instance
end