From 5259319cf5d01a23a0e9517b9dc91c0a1f7e2ae9 Mon Sep 17 00:00:00 2001 From: Matt Jankowski Date: Sun, 30 Apr 2017 12:15:49 -0400 Subject: [PATCH] Reports spec for media attachments, clean up method (#2660) * Add coverage for Report#media_attachments * Direct query on media attachment --- app/models/report.rb | 6 +----- spec/models/report_spec.rb | 11 +++++++++++ 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/app/models/report.rb b/app/models/report.rb index c7d8877458..d813d0d0d1 100644 --- a/app/models/report.rb +++ b/app/models/report.rb @@ -13,10 +13,6 @@ class Report < ApplicationRecord end def media_attachments - media_attachments = [] - statuses.each do |s| - media_attachments.concat s.media_attachments - end - media_attachments + MediaAttachment.where(status_id: status_ids) end end diff --git a/spec/models/report_spec.rb b/spec/models/report_spec.rb index 80b8cc55b5..6c27238457 100644 --- a/spec/models/report_spec.rb +++ b/spec/models/report_spec.rb @@ -10,4 +10,15 @@ describe Report do expect(report.statuses).to eq [status] end end + + describe 'media_attachments' do + it 'returns media attachments from statuses' do + status = Fabricate(:status) + media_attachment = Fabricate(:media_attachment, status: status) + _other_media_attachment = Fabricate(:media_attachment) + report = Fabricate(:report, status_ids: [status.id]) + + expect(report.media_attachments).to eq [media_attachment] + end + end end