matchdo|migration|BackgroundMigrationWorker.jobs.any?do|job|job['args']==[migration,expected]&&job['at'].to_i==(delay.to_i+Time.now.to_i)endendfailure_messagedo|migration|"Migration `#{migration}` with args `#{expected.inspect}` "\'not scheduled in expected time!'endend
RSpec::Matchers.define:be_scheduled_migrationdo|*expected|matchdo|migration|BackgroundMigrationWorker.jobs.any?do|job|args=job['args'].size==1?[BackgroundMigrationWorker.jobs[0]['args'][0],[]]:job['args']args==[migration,expected]endendfailure_messagedo|migration|"Migration `#{migration}` with args `#{expected.inspect}` not scheduled!"endend