about summary refs log tree commit diff
path: root/spec/controllers/statuses_controller_spec.rb
diff options
context:
space:
mode:
authorunarist <m.unarist@gmail.com>2017-08-24 23:21:42 +0900
committerEugen Rochko <eugen@zeonfederated.com>2017-08-24 16:21:42 +0200
commitb01a19fe392e0dd16d6b3da3f0b56369f7837cc9 (patch)
treea8b4fe087dc8a3186b875517a84ce23e6bf37019 /spec/controllers/statuses_controller_spec.rb
parentc66fe2aeba84af5ab47c20298ddc8dceaf0e179f (diff)
Fetch reblogs as Announce activity instead of Note object (#4672)
* Process Create / Announce activity in FetchRemoteStatusService

* Use activity URL in ActivityPub for reblogs

* Redirect to the original status on StatusesController#show
Diffstat (limited to 'spec/controllers/statuses_controller_spec.rb')
-rw-r--r--spec/controllers/statuses_controller_spec.rb12
1 files changed, 12 insertions, 0 deletions
diff --git a/spec/controllers/statuses_controller_spec.rb b/spec/controllers/statuses_controller_spec.rb
index 88d365624..95fb4d594 100644
--- a/spec/controllers/statuses_controller_spec.rb
+++ b/spec/controllers/statuses_controller_spec.rb
@@ -30,6 +30,18 @@ describe StatusesController do
       end
     end
 
+    context 'status is a reblog' do
+      it 'redirects to the original status' do
+        original_account = Fabricate(:account, domain: 'example.com')
+        original_status = Fabricate(:status, account: original_account, uri: 'tag:example.com,2017:foo', url: 'https://example.com/123')
+        status = Fabricate(:status, reblog: original_status)
+
+        get :show, params: { account_username: status.account.username, id: status.id }
+
+        expect(response).to redirect_to(original_status.url)
+      end
+    end
+
     context 'account is not suspended and status is permitted' do
       it 'assigns @account' do
         status = Fabricate(:status)