Skip to content

Commit

Permalink
Test against SolidQueue 1
Browse files Browse the repository at this point in the history
  • Loading branch information
mrrooijen committed Nov 15, 2024
1 parent bd53a1e commit cd9f0f4
Show file tree
Hide file tree
Showing 17 changed files with 529 additions and 14 deletions.
11 changes: 9 additions & 2 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,9 +62,16 @@ jobs:
- sidekiq_6
- sidekiq_7
- solid_queue_0
- solid_queue_1
exclude:
- ruby-version: 2.7
appraisal: good_job_4
- appraisal: solid_queue_1
ruby-version: 2.7
- appraisal: solid_queue_1
ruby-version: 3.0
- appraisal: solid_queue_1
ruby-version: 3.1
- appraisal: good_job_4
ruby-version: 2.7
steps:
- name: Check out repository
uses: actions/checkout@v4
Expand Down
6 changes: 6 additions & 0 deletions Appraisals
Original file line number Diff line number Diff line change
Expand Up @@ -87,3 +87,9 @@ appraise "solid_queue_0" do
gem "rails", "~> 7"
gem "solid_queue", "< 0.2", require: false
end

appraise "solid_queue_1" do
gem "pg"
gem "rails", "~> 8"
gem "solid_queue", "~> 1", require: false
end
2 changes: 1 addition & 1 deletion Rakefile
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ APPRAISAL_FILES = {

APPRAISAL_VERSIONS = {
"rack" => %w[2 3],
"solid_queue" => %w[0],
"solid_queue" => %w[0 1],
"sidekiq" => %w[6 7],
"bunny" => %w[2],
"good_job" => %w[2 3 4],
Expand Down
20 changes: 20 additions & 0 deletions gemfiles/solid_queue_1.gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# This file was generated by Appraisal

source "https://rubygems.org"

gem "debug"
gem "rake"
gem "standardrb"
gem "minitest"
gem "webmock"
gem "mocha"
gem "timecop"
gem "yard"
gem "rack"
gem "webrick"
gem "simplecov", require: false
gem "pg"
gem "rails", "~> 8"
gem "solid_queue", "~> 1", require: false

gemspec path: "../"
288 changes: 288 additions & 0 deletions gemfiles/solid_queue_1.gemfile.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,288 @@
PATH
remote: ..
specs:
hirefire-resource (1.0.4)

GEM
remote: https://rubygems.org/
specs:
actioncable (8.0.0)
actionpack (= 8.0.0)
activesupport (= 8.0.0)
nio4r (~> 2.0)
websocket-driver (>= 0.6.1)
zeitwerk (~> 2.6)
actionmailbox (8.0.0)
actionpack (= 8.0.0)
activejob (= 8.0.0)
activerecord (= 8.0.0)
activestorage (= 8.0.0)
activesupport (= 8.0.0)
mail (>= 2.8.0)
actionmailer (8.0.0)
actionpack (= 8.0.0)
actionview (= 8.0.0)
activejob (= 8.0.0)
activesupport (= 8.0.0)
mail (>= 2.8.0)
rails-dom-testing (~> 2.2)
actionpack (8.0.0)
actionview (= 8.0.0)
activesupport (= 8.0.0)
nokogiri (>= 1.8.5)
rack (>= 2.2.4)
rack-session (>= 1.0.1)
rack-test (>= 0.6.3)
rails-dom-testing (~> 2.2)
rails-html-sanitizer (~> 1.6)
useragent (~> 0.16)
actiontext (8.0.0)
actionpack (= 8.0.0)
activerecord (= 8.0.0)
activestorage (= 8.0.0)
activesupport (= 8.0.0)
globalid (>= 0.6.0)
nokogiri (>= 1.8.5)
actionview (8.0.0)
activesupport (= 8.0.0)
builder (~> 3.1)
erubi (~> 1.11)
rails-dom-testing (~> 2.2)
rails-html-sanitizer (~> 1.6)
activejob (8.0.0)
activesupport (= 8.0.0)
globalid (>= 0.3.6)
activemodel (8.0.0)
activesupport (= 8.0.0)
activerecord (8.0.0)
activemodel (= 8.0.0)
activesupport (= 8.0.0)
timeout (>= 0.4.0)
activestorage (8.0.0)
actionpack (= 8.0.0)
activejob (= 8.0.0)
activerecord (= 8.0.0)
activesupport (= 8.0.0)
marcel (~> 1.0)
activesupport (8.0.0)
base64
benchmark (>= 0.3)
bigdecimal
concurrent-ruby (~> 1.0, >= 1.3.1)
connection_pool (>= 2.2.5)
drb
i18n (>= 1.6, < 2)
logger (>= 1.4.2)
minitest (>= 5.1)
securerandom (>= 0.3)
tzinfo (~> 2.0, >= 2.0.5)
uri (>= 0.13.1)
addressable (2.8.7)
public_suffix (>= 2.0.2, < 7.0)
appraisal (2.5.0)
bundler
rake
thor (>= 0.14.0)
ast (2.4.2)
base64 (0.2.0)
benchmark (0.4.0)
bigdecimal (3.1.8)
builder (3.3.0)
concurrent-ruby (1.3.4)
connection_pool (2.4.1)
crack (1.0.0)
bigdecimal
rexml
crass (1.0.6)
date (3.4.0)
debug (1.9.2)
irb (~> 1.10)
reline (>= 0.3.8)
docile (1.4.1)
drb (2.2.1)
erubi (1.13.0)
et-orbi (1.2.11)
tzinfo
fugit (1.11.1)
et-orbi (~> 1, >= 1.2.11)
raabro (~> 1.4)
globalid (1.2.1)
activesupport (>= 6.1)
hashdiff (1.1.1)
i18n (1.14.6)
concurrent-ruby (~> 1.0)
io-console (0.7.2)
irb (1.14.1)
rdoc (>= 4.0.0)
reline (>= 0.4.2)
json (2.8.1)
language_server-protocol (3.17.0.3)
lint_roller (1.1.0)
logger (1.6.1)
loofah (2.23.1)
crass (~> 1.0.2)
nokogiri (>= 1.12.0)
mail (2.8.1)
mini_mime (>= 0.1.1)
net-imap
net-pop
net-smtp
marcel (1.0.4)
mini_mime (1.1.5)
minitest (5.25.1)
mocha (2.5.0)
ruby2_keywords (>= 0.0.5)
net-imap (0.5.1)
date
net-protocol
net-pop (0.1.2)
net-protocol
net-protocol (0.2.2)
timeout
net-smtp (0.5.0)
net-protocol
nio4r (2.7.4)
nokogiri (1.16.7-arm64-darwin)
racc (~> 1.4)
parallel (1.26.3)
parser (3.3.6.0)
ast (~> 2.4.1)
racc
pg (1.5.9)
psych (5.2.0)
stringio
public_suffix (6.0.1)
raabro (1.4.0)
racc (1.8.1)
rack (3.1.8)
rack-session (2.0.0)
rack (>= 3.0.0)
rack-test (2.1.0)
rack (>= 1.3)
rackup (2.2.0)
rack (>= 3)
rails (8.0.0)
actioncable (= 8.0.0)
actionmailbox (= 8.0.0)
actionmailer (= 8.0.0)
actionpack (= 8.0.0)
actiontext (= 8.0.0)
actionview (= 8.0.0)
activejob (= 8.0.0)
activemodel (= 8.0.0)
activerecord (= 8.0.0)
activestorage (= 8.0.0)
activesupport (= 8.0.0)
bundler (>= 1.15.0)
railties (= 8.0.0)
rails-dom-testing (2.2.0)
activesupport (>= 5.0.0)
minitest
nokogiri (>= 1.6)
rails-html-sanitizer (1.6.0)
loofah (~> 2.21)
nokogiri (~> 1.14)
railties (8.0.0)
actionpack (= 8.0.0)
activesupport (= 8.0.0)
irb (~> 1.13)
rackup (>= 1.0.0)
rake (>= 12.2)
thor (~> 1.0, >= 1.2.2)
zeitwerk (~> 2.6)
rainbow (3.1.1)
rake (13.2.1)
rdoc (6.7.0)
psych (>= 4.0.0)
regexp_parser (2.9.2)
reline (0.5.11)
io-console (~> 0.5)
rexml (3.3.9)
rubocop (1.66.1)
json (~> 2.3)
language_server-protocol (>= 3.17.0)
parallel (~> 1.10)
parser (>= 3.3.0.2)
rainbow (>= 2.2.2, < 4.0)
regexp_parser (>= 2.4, < 3.0)
rubocop-ast (>= 1.32.2, < 2.0)
ruby-progressbar (~> 1.7)
unicode-display_width (>= 2.4.0, < 3.0)
rubocop-ast (1.35.0)
parser (>= 3.3.1.0)
rubocop-performance (1.22.1)
rubocop (>= 1.48.1, < 2.0)
rubocop-ast (>= 1.31.1, < 2.0)
ruby-progressbar (1.13.0)
ruby2_keywords (0.0.5)
securerandom (0.3.2)
simplecov (0.22.0)
docile (~> 1.1)
simplecov-html (~> 0.11)
simplecov_json_formatter (~> 0.1)
simplecov-html (0.13.1)
simplecov_json_formatter (0.1.4)
solid_queue (1.0.1)
activejob (>= 7.1)
activerecord (>= 7.1)
concurrent-ruby (>= 1.3.1)
fugit (~> 1.11.0)
railties (>= 7.1)
thor (~> 1.3.1)
standard (1.41.1)
language_server-protocol (~> 3.17.0.2)
lint_roller (~> 1.0)
rubocop (~> 1.66.0)
standard-custom (~> 1.0.0)
standard-performance (~> 1.5)
standard-custom (1.0.2)
lint_roller (~> 1.0)
rubocop (~> 1.50)
standard-performance (1.5.0)
lint_roller (~> 1.1)
rubocop-performance (~> 1.22.0)
standardrb (1.0.1)
standard
stringio (3.1.2)
thor (1.3.2)
timecop (0.9.8)
timeout (0.4.2)
tzinfo (2.0.6)
concurrent-ruby (~> 1.0)
unicode-display_width (2.6.0)
uri (1.0.1)
useragent (0.16.10)
webmock (3.24.0)
addressable (>= 2.8.0)
crack (>= 0.3.2)
hashdiff (>= 0.4.0, < 2.0.0)
webrick (1.8.1)
websocket-driver (0.7.6)
websocket-extensions (>= 0.1.0)
websocket-extensions (0.1.5)
yard (0.9.37)
zeitwerk (2.7.1)

PLATFORMS
arm64-darwin-24

DEPENDENCIES
appraisal (~> 2)
debug
hirefire-resource!
minitest
mocha
pg
rack
rails (~> 8)
rake
simplecov
solid_queue (~> 1)
standardrb
timecop
webmock
webrick
yard

BUNDLED WITH
2.4.7
1 change: 1 addition & 0 deletions test/env/rails_solid_queue_1/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/tmp
3 changes: 3 additions & 0 deletions test/env/rails_solid_queue_1/Rakefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
require_relative "config/application"

Rails.application.load_tasks
4 changes: 4 additions & 0 deletions test/env/rails_solid_queue_1/app/jobs/basic_job.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
class BasicJob < ActiveJob::Base
def perform
end
end
7 changes: 7 additions & 0 deletions test/env/rails_solid_queue_1/app/jobs/blocked_job.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
class BlockedJob < ActiveJob::Base
BLOCK_DURATION = 10.seconds
limits_concurrency to: 1, key: "ratelimit", duration: BLOCK_DURATION

def perform
end
end
4 changes: 4 additions & 0 deletions test/env/rails_solid_queue_1/bin/rails
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#!/usr/bin/env ruby
APP_PATH = File.expand_path("../config/application", __dir__)
require_relative "../config/boot"
require "rails/commands"
2 changes: 2 additions & 0 deletions test/env/rails_solid_queue_1/config.ru
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
require_relative "config/environment"
run Rails.application
14 changes: 14 additions & 0 deletions test/env/rails_solid_queue_1/config/application.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
require_relative "boot"

require "active_support/railtie"
require "active_job/railtie"
require "active_record/railtie"

require "solid_queue"

class RailsSolidQueue1Application < Rails::Application
config.load_defaults 8.0
config.root = File.expand_path("../..", __FILE__)
config.eager_load = false
config.active_job.queue_adapter = :solid_queue
end
3 changes: 3 additions & 0 deletions test/env/rails_solid_queue_1/config/boot.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../../../gemfiles/solid_queue_1.gemfile", __dir__)

require "bundler/setup"
Loading

0 comments on commit cd9f0f4

Please sign in to comment.