class BeanstalkIntegrationTest

Public Class Methods

address(custom_address = '0.0.0.0') click to toggle source
# File lib/beanstalk_integration_tests/test_helper.rb, line 37
def address(custom_address = '0.0.0.0')
  return @address ||= custom_address
end
new(*) click to toggle source
Calls superclass method
# File lib/beanstalk_integration_tests/test_helper.rb, line 94
def initialize(*)
  @tubes = []
  @clients = []
  super
end

Public Instance Methods

address() click to toggle source
# File lib/beanstalk_integration_tests/test_helper.rb, line 58
def address
  return self.class.address
end
build_client() click to toggle source
# File lib/beanstalk_integration_tests/test_helper.rb, line 62
def build_client
  new_client = Beaneater::Connection.new(address)
  @clients << new_client
  return new_client
end
cleanup_tubes() click to toggle source
# File lib/beanstalk_integration_tests/test_helper.rb, line 68
def cleanup_tubes
  @pool = Beaneater::Pool.new([address])
  @tubes.each do |tube_name|
    @pool.tubes.find(tube_name).clear
  end
  @pool.close
  @tubes.clear
end
client() click to toggle source
# File lib/beanstalk_integration_tests/test_helper.rb, line 77
def client
  @client ||= build_client
end
create_buried_jobs(buried_count = 5) click to toggle source
# File lib/beanstalk_integration_tests/test_helper.rb, line 81
def create_buried_jobs(buried_count = 5)
  job_ids = []
  buried_count.times do
    message = uuid
    client.transmit("put 0 0 120 #{message.bytesize}\r\n#{message}")
    timeout(1) do
      job_ids << client.transmit('reserve')[:id]
    end
    client.transmit("bury #{job_ids.last} 0")
  end
  return job_ids
end
generate_tube_name() click to toggle source
# File lib/beanstalk_integration_tests/test_helper.rb, line 100
def generate_tube_name
  tube = uuid
  @tubes << tube
  return tube
end
tube_name() click to toggle source
# File lib/beanstalk_integration_tests/test_helper.rb, line 106
def tube_name
  return @tube_name ||= generate_tube_name
end
uuid() click to toggle source
# File lib/beanstalk_integration_tests/test_helper.rb, line 110
def uuid
  SecureRandom.uuid
end