Add support for summary field for media description (#13763)
		
	This commit is contained in:
		
					parent
					
						
							
								328c5a21d7
							
						
					
				
			
			
				commit
				
					
						a319c1e60f
					
				
			
		
					 2 changed files with 26 additions and 1 deletions
				
			
		|  | @ -201,7 +201,7 @@ class ActivityPub::Activity::Create < ActivityPub::Activity | ||||||
| 
 | 
 | ||||||
|       begin |       begin | ||||||
|         href             = Addressable::URI.parse(attachment['url']).normalize.to_s |         href             = Addressable::URI.parse(attachment['url']).normalize.to_s | ||||||
|         media_attachment = MediaAttachment.create(account: @account, remote_url: href, description: attachment['name'].presence, focus: attachment['focalPoint'], blurhash: supported_blurhash?(attachment['blurhash']) ? attachment['blurhash'] : nil) |         media_attachment = MediaAttachment.create(account: @account, remote_url: href, description: attachment['summary'].presence || attachment['name'].presence, focus: attachment['focalPoint'], blurhash: supported_blurhash?(attachment['blurhash']) ? attachment['blurhash'] : nil) | ||||||
|         media_attachments << media_attachment |         media_attachments << media_attachment | ||||||
| 
 | 
 | ||||||
|         next if unsupported_media_type?(attachment['mediaType']) || skip_download? |         next if unsupported_media_type?(attachment['mediaType']) || skip_download? | ||||||
|  |  | ||||||
|  | @ -287,6 +287,31 @@ RSpec.describe ActivityPub::Activity::Create do | ||||||
|         end |         end | ||||||
|       end |       end | ||||||
| 
 | 
 | ||||||
|  |       context 'with media attachments with long description as summary' do | ||||||
|  |         let(:object_json) do | ||||||
|  |           { | ||||||
|  |             id: [ActivityPub::TagManager.instance.uri_for(sender), '#bar'].join, | ||||||
|  |             type: 'Note', | ||||||
|  |             content: 'Lorem ipsum', | ||||||
|  |             attachment: [ | ||||||
|  |               { | ||||||
|  |                 type: 'Document', | ||||||
|  |                 mediaType: 'image/png', | ||||||
|  |                 url: 'http://example.com/attachment.png', | ||||||
|  |                 summary: '*' * 1500, | ||||||
|  |               }, | ||||||
|  |             ], | ||||||
|  |           } | ||||||
|  |         end | ||||||
|  | 
 | ||||||
|  |         it 'creates status' do | ||||||
|  |           status = sender.statuses.first | ||||||
|  | 
 | ||||||
|  |           expect(status).to_not be_nil | ||||||
|  |           expect(status.media_attachments.map(&:description)).to include('*' * 1500) | ||||||
|  |         end | ||||||
|  |       end | ||||||
|  | 
 | ||||||
|       context 'with media attachments with focal points' do |       context 'with media attachments with focal points' do | ||||||
|         let(:object_json) do |         let(:object_json) do | ||||||
|           { |           { | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue