require "bbqueue" require "minitest" require "minitest/autorun" require "tempfile" require File.expand_path("../bbqueue/stalking", __FILE__) require File.expand_path("../bbqueue/test_job", __FILE__) require File.expand_path("../bbqueue/test_logger", __FILE__) class MiniTest::Test def assert_nothing_raised yield rescue => e raise "Exception #{e.message} should be raised" end def assert_difference(expression, difference = 1, message = nil, &block) expressions = Array(expression) exps = expressions.map do |e| e.respond_to?(:call) ? e : lambda { eval(e, block.binding) } end before = exps.map { |e| e.call } yield expressions.zip(exps).each_with_index do |(code, e), i| error = "#{code.inspect} didn't change by #{difference}" error = "#{message}.\n#{error}" if message assert_equal(before[i] + difference, e.call, error) end end end