Sha256: 2c79c530b868f0910f1f546d89da37885102c71b8a59530d78d56a0518df2112

Contents?: true

Size: 892 Bytes

Versions: 3

Compression:

Stored size: 892 Bytes

Contents

class TestTransport < Wamp::Client::Transport::EventMachineBase
  @@event_machine_on = false
  attr_accessor :messages

  def initialize(options)
    super(options)
    @connected = true
    self.messages = []
  end

  def connect
    self.add_timer(1000) do
      trigger :open
    end
  end

  def disconnect
    @connected = false
    trigger :close
  end

  def self.start_event_machine(&block)
    @@event_machine_on = true
    block.call
  end

  def self.stop_event_machine
    @@event_machine_on = false
  end

  def self.event_machine_on?
    @@event_machine_on
  end

  def send_message(msg)
    self.messages.push(msg)
  end

  def receive_message(msg)

    # Emulate serialization/deserialization
    serialize = self.serializer.serialize(msg)
    deserialize = self.serializer.deserialize(serialize)

    # Call the received message
    trigger :message, deserialize
  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
wamp_client-0.2.2 spec/support/test_transport.rb
wamp_client-0.2.1 spec/support/test_transport.rb
wamp_client-0.2.0 spec/support/test_transport.rb