Sha256: 76f4d1a8f2fbfbd9d6ae24b831ea103af0043c6dbbc47e0a258ea919cd83dffe

Contents?: true

Size: 631 Bytes

Versions: 1

Compression:

Stored size: 631 Bytes

Contents

module Que
  module Testing
    class JobParams < Struct.new(:queue, :priority, :run_at, :job_class, :args)
    end

    class Adapter
      def checkout(&block)
      end

      def execute(command, params = [])
        return [] unless command == :insert_job

        job = JobParams.new(*params)
        klass = class_for(job.job_class)
        jobs[klass] << job
        params
      end

      def wake_worker_after_commit
        false
      end

      def class_for(str)
        str.split('::').reduce(Object, &:const_get)
      end

      def jobs
        @jobs ||= Hash.new { |h,k| h[k] = [] }
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
que-testing-0.1.1 lib/que/testing/adapter.rb