Rakefile in beanstalkd_view-1.0.1 vs Rakefile in beanstalkd_view-1.0.2

- old
+ new

@@ -1,7 +1,53 @@ +APP_FILE = 'lib/beanstalkd_view.rb' +APP_CLASS = 'BeanstalkdView::Server' + +require 'sinatra/assetpack/rake' + require "bundler/gem_tasks" require "rspec/core/rake_task" RSpec::Core::RakeTask.new(:spec) task :default => :spec +require 'beanstalk-client' +require 'json' + +namespace :beanstalkd_view do + + TEST_QUEUES = ['tube_sock', 'test_tube', 'tube_top', 'inner_tube'] + + # Randomly enqueue elements to test queues + task :enqueue_test do + host = "localhost" + port = 11300 + beanstalk = Beanstalk::Pool.new([ "#{host}:#{port}" ]) + + # Loop flooding the queues with jobs + while true + tube = TEST_QUEUES.sample + pri = 65536 + delay = 0 + ttr = 120 + beanstalk.use tube + beanstalk.put [ tube, {} ].to_json, pri, delay, ttr + puts "Enqueued Job to #{tube}" + end + end + + # Randomly pull elements from test queues + task :pull_test do + host = "localhost" + port = 11300 + beanstalk = Beanstalk::Pool.new([ "#{host}:#{port}" ]) + + while true + tube = TEST_QUEUES.sample + beanstalk.watch(tube) + job = beanstalk.reserve + puts "Pulled Job #{job} from #{tube}" + job.delete + end + end + +end \ No newline at end of file