mirror of
https://github.com/mastodon/mastodon.git
synced 2026-01-11 19:56:37 +00:00
Fix URI generation for reblogs by accounts with numerical AP ids (#37415)
Some checks failed
Bundler Audit / security (push) Has been cancelled
Haml Linting / lint (push) Has been cancelled
Check i18n / check-i18n (push) Waiting to run
Chromatic / Check for relevant changes (push) Waiting to run
Chromatic / Run Chromatic (push) Blocked by required conditions
CodeQL / Analyze (push) Waiting to run
Check formatting / lint (push) Waiting to run
CSS Linting / lint (push) Waiting to run
JavaScript Linting / lint (push) Waiting to run
Ruby Linting / lint (push) Waiting to run
JavaScript Testing / test (push) Waiting to run
Historical data migration test / test (14-alpine) (push) Waiting to run
Historical data migration test / test (15-alpine) (push) Waiting to run
Historical data migration test / test (16-alpine) (push) Waiting to run
Historical data migration test / test (17-alpine) (push) Waiting to run
Ruby Testing / build (production) (push) Waiting to run
Ruby Testing / build (test) (push) Waiting to run
Ruby Testing / test (.ruby-version) (push) Blocked by required conditions
Ruby Testing / test (3.2) (push) Blocked by required conditions
Ruby Testing / test (3.3) (push) Blocked by required conditions
Ruby Testing / ImageMagick tests (push) Blocked by required conditions
Ruby Testing / End to End testing (push) Blocked by required conditions
Ruby Testing / Elastic Search integration testing (push) Blocked by required conditions
Some checks failed
Bundler Audit / security (push) Has been cancelled
Haml Linting / lint (push) Has been cancelled
Check i18n / check-i18n (push) Waiting to run
Chromatic / Check for relevant changes (push) Waiting to run
Chromatic / Run Chromatic (push) Blocked by required conditions
CodeQL / Analyze (push) Waiting to run
Check formatting / lint (push) Waiting to run
CSS Linting / lint (push) Waiting to run
JavaScript Linting / lint (push) Waiting to run
Ruby Linting / lint (push) Waiting to run
JavaScript Testing / test (push) Waiting to run
Historical data migration test / test (14-alpine) (push) Waiting to run
Historical data migration test / test (15-alpine) (push) Waiting to run
Historical data migration test / test (16-alpine) (push) Waiting to run
Historical data migration test / test (17-alpine) (push) Waiting to run
Ruby Testing / build (production) (push) Waiting to run
Ruby Testing / build (test) (push) Waiting to run
Ruby Testing / test (.ruby-version) (push) Blocked by required conditions
Ruby Testing / test (3.2) (push) Blocked by required conditions
Ruby Testing / test (3.3) (push) Blocked by required conditions
Ruby Testing / ImageMagick tests (push) Blocked by required conditions
Ruby Testing / End to End testing (push) Blocked by required conditions
Ruby Testing / Elastic Search integration testing (push) Blocked by required conditions
This commit is contained in:
parent
bdcdd539f6
commit
aa2110025e
2 changed files with 23 additions and 1 deletions
|
|
@ -50,7 +50,7 @@ class ActivityPub::TagManager
|
|||
context_url(target) unless target.parent_account_id.nil? || target.parent_status_id.nil?
|
||||
when :note, :comment, :activity
|
||||
if target.account.numeric_ap_id?
|
||||
return activity_ap_account_status_url(target.account, target) if target.reblog?
|
||||
return activity_ap_account_status_url(target.account.id, target) if target.reblog?
|
||||
|
||||
ap_account_status_url(target.account.id, target)
|
||||
else
|
||||
|
|
|
|||
|
|
@ -128,6 +128,28 @@ RSpec.describe ActivityPub::TagManager do
|
|||
.to eq("#{host_prefix}/ap/users/#{status.account.id}/statuses/#{status.id}")
|
||||
end
|
||||
end
|
||||
|
||||
context 'with a reblog' do
|
||||
let(:status) { Fabricate(:status, account:, reblog: Fabricate(:status)) }
|
||||
|
||||
context 'when using a numeric ID based scheme' do
|
||||
let(:account) { Fabricate(:account, id_scheme: :numeric_ap_id) }
|
||||
|
||||
it 'returns a string starting with web domain and with the expected path' do
|
||||
expect(subject.uri_for(status))
|
||||
.to eq("#{host_prefix}/ap/users/#{status.account.id}/statuses/#{status.id}/activity")
|
||||
end
|
||||
end
|
||||
|
||||
context 'when using the legacy username based scheme' do
|
||||
let(:account) { Fabricate(:account, id_scheme: :username_ap_id) }
|
||||
|
||||
it 'returns a string starting with web domain and with the expected path' do
|
||||
expect(subject.uri_for(status))
|
||||
.to eq("#{host_prefix}/users/#{status.account.username}/statuses/#{status.id}/activity")
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context 'with a remote status' do
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue