otwarchive-symphonyarchive/spec/jobs/report_attachment_job_spec.rb

26 lines
936 B
Ruby
Raw Permalink Normal View History

2026-03-11 22:22:11 +00:00
# frozen_string_literal: true
require "spec_helper"
describe ReportAttachmentJob do
let(:work) { build(:work) }
let(:writer_mock) { instance_double(DownloadWriter) }
let(:reporter) { instance_double(FeedbackReporter) }
before do
download_mock = instance_double(Download)
allow(Download).to receive(:new).with(work, { mime_type: "text/html" }).and_return(download_mock)
allow(download_mock).to receive(:file_name).and_return("filename")
allow(DownloadWriter).to receive(:new).with(download_mock).and_return(writer_mock)
allow(writer_mock).to receive(:generate_html)
allow(FeedbackReporter).to receive(:new).and_return(reporter)
allow(reporter).to receive(:send_attachment!)
end
it "attaches a download of the given work" do
ReportAttachmentJob.perform_now(0, work)
expect(writer_mock).to have_received(:generate_html)
expect(reporter).to have_received(:send_attachment!)
end
end