1
0
مراية لـ https://github.com/postalserver/postal.git تم المزامنة 2025-12-01 05:43:04 +00:00

refactor: refactors message dequeueing (#2810)

هذا الالتزام موجود في:
Adam Cooke
2024-02-22 22:26:27 +00:00
ملتزم من قبل Adam Cooke
الأصل 07eb15246f
التزام a44e1f9081
20 ملفات معدلة مع 1808 إضافات و1537 حذوفات

عرض الملف

@@ -0,0 +1,42 @@
# frozen_string_literal: true
require "rails_helper"
module MessageDequeuer
RSpec.describe State do
subject(:state) { described_class.new }
describe "#send_result" do
it "can be get and set" do
result = instance_double(Postal::SendResult)
state.send_result = result
expect(state.send_result).to be result
end
end
describe "#sender_for" do
it "returns a instance of the given sender initialized with the args" do
sender = state.sender_for(Postal::HTTPSender, "1234")
expect(sender).to be_a Postal::HTTPSender
end
it "returns a cached sender on subsequent calls" do
sender = state.sender_for(Postal::HTTPSender, "1234")
expect(state.sender_for(Postal::HTTPSender, "1234")).to be sender
end
end
describe "#finished" do
it "calls finish on all cached senders" do
sender1 = state.sender_for(Postal::HTTPSender, "1234")
sender2 = state.sender_for(Postal::HTTPSender, "4444")
expect(sender1).to receive(:finish)
expect(sender2).to receive(:finish)
state.finished
end
end
end
end