Sha256: 9f5239a5b216b995c625fc66402b85fd3238d9dc27ddbb7080e6a5f4e64dcee5

Contents?: true

Size: 1 KB

Versions: 12

Compression:

Stored size: 1 KB

Contents

require 'minitest/autorun'
require 'active_record'
require 'active_job'
require 'pry'
require 'colorize'
require 'mysql2'
require 'benchmark'
require 'jobs'

class WorkhorseTest < ActiveSupport::TestCase
  def setup
    Workhorse::DbJob.delete_all
  end

  protected

  def capture_log(level: :debug)
    io = StringIO.new
    logger = Logger.new(io, level: level)
    yield logger
    io.close
    return io.string
  end

  def work(time = 2, options = {})
    options[:pool_size] ||= 5
    options[:polling_interval] ||= 1

    with_worker(options) do
      sleep time
    end
  end

  def with_worker(options = {})
    w = Workhorse::Worker.new(options)
    w.start
    begin
      yield(w)
    ensure
      w.shutdown
    end
  end
end

ActiveRecord::Base.establish_connection(
  adapter:  'mysql2',
  database: ENV['DB_NAME'] || 'workhorse',
  username: ENV['DB_USERNAME'] || 'root',
  password: ENV['DB_PASSWORD'] || '',
  host:     ENV['DB_HOST'] || '127.0.0.1',
  pool:     10
)

require 'db_schema'
require 'workhorse'

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
workhorse-1.2.4 test/lib/test_helper.rb
workhorse-1.2.3 test/lib/test_helper.rb
workhorse-1.2.2 test/lib/test_helper.rb
workhorse-1.2.1 test/lib/test_helper.rb
workhorse-1.2.0 test/lib/test_helper.rb
workhorse-1.1.1 test/lib/test_helper.rb
workhorse-1.1.0 test/lib/test_helper.rb
workhorse-1.0.1 test/lib/test_helper.rb
workhorse-1.0.0 test/lib/test_helper.rb
workhorse-1.0.0.beta2 test/lib/test_helper.rb
workhorse-1.0.0.beta1 test/lib/test_helper.rb
workhorse-1.0.0.beta0 test/lib/test_helper.rb