我想测试一下,在提交表单时,会使用适当的参数对特定作业进行排队。为此,我需要检查传递给作业的参数,其中包括使用全局ID序列化的ActiveRecord
模型。
我想用最少的方法调用来做到这一点。现在,我正在使用这个:
GlobalID::Locator.locate(enqueued_jobs[0][:args][0]['_aj_globalid'])
其中enqueued_jobs
由ActiveJob::TestHelper
定义。
我可以通过使用一些宝石更优雅地做到这一点吗?
答案 0 :(得分:1)
我最近也在寻找相同的东西,我遇到了符合我需要的rspec-activejob宝石。它允许您编写期望,例如:
expect(MyAwesomeJob).to have_been_enqueued.with(global_id(user))