タケユー・ウェブ日報

Webシステム受託会社の業務の中での気づきや調べごとのメモ。

ActiveJob

rspec で ActionMailer の deliver_later のジョブはすぐに処理する

ActiveJob へのキューインの spec で示したように ActiveJob::Base.queue_adapter = :test を使うと、 perform_later のジョブはキューに溜まるようになる。 しかし、 ActionMailer の deliver_later で非同期送信を使っている場合にまでキューインされてし…

ActiveJob へのキューインの spec

まとめ ActiveJob::Base.queue_adapter = :test を使うと、 ActiveJob::Base.queue_adapter.enqueued_jobs にジョブが入る have_enqueued_job マッチャーでジョブが入っていることを expect する サンプルコード it 'enqueues PaymentIntentSuccessedJob' do…

Shinjuku.rb #29 ActiveJobでSQS使ったのとその永続化についての話

9/30のShinjuku.rb発表ネタです。 ActiveJob プロセス管理ツール ServerEngine のはなし。 時間は適当で良いということだったので5分で終わらない感じになりました。 Shinjuku.rb #29 ActiveJobでSQS使ったのとその永続化についての話 from Takeuchi Yuichi

ActiveJob エンキューされることをテスト

test用のアダプタがあるのでそれを使うとActiveJob::Base.queue_adapter.enqueued_jobsでキューイングされたジョブを取得できるっぽい。 rails/test_adapter.rb at master · rails/rails · GitHub で、それを利用して特定のジョブクラスが引数付きでエンキュ…

ActiveJob::Base#perform のブラックボックステスト

作法として正しいかどうかはわからないですが、queue_adapter = :inlineにしてperform_laterすればすぐ実行されるからブラックボックステストはできそう require 'rails_helper' RSpec.describe SendToChatworkJob, :type => :job do before :all do SendToC…

Active Job meets Amazon SQS

この記事は Ruby on Rails Advent Calendar 2014 の11日目の記事です。 Rails 4.2の目玉機能の1つ、ActiveJobのアダプタの自作について試したことメモ。