about summary refs log tree commit diff
path: root/spec/controllers/concerns/signature_verification_spec.rb
diff options
context:
space:
mode:
authorThibG <thib@sitedethib.com>2020-02-06 22:48:26 +0100
committerGitHub <noreply@github.com>2020-02-06 22:48:26 +0100
commit96ec90b986c8a2783135f123c10062725d274733 (patch)
tree1cbb8b756a2e4d0770c19b834ede0326f99a3dcc /spec/controllers/concerns/signature_verification_spec.rb
parentccaefd139d33f2f0bf4d097131bcf91960bee956 (diff)
parentfe9a124f5a9f3a7cb6cfba141245cccb88c7dfbe (diff)
Merge pull request #1278 from ThibG/glitch-soc/merge-upstream
Merge upstream changes
Diffstat (limited to 'spec/controllers/concerns/signature_verification_spec.rb')
-rw-r--r--spec/controllers/concerns/signature_verification_spec.rb27
1 files changed, 27 insertions, 0 deletions
diff --git a/spec/controllers/concerns/signature_verification_spec.rb b/spec/controllers/concerns/signature_verification_spec.rb
index 1fa19f54d..05fb1445b 100644
--- a/spec/controllers/concerns/signature_verification_spec.rb
+++ b/spec/controllers/concerns/signature_verification_spec.rb
@@ -97,6 +97,33 @@ describe ApplicationController, type: :controller do
       end
     end
 
+    context 'with inaccessible key' do
+      before do
+        get :success
+
+        author = Fabricate(:account, domain: 'localhost:5000', uri: 'http://localhost:5000/actor')
+        fake_request = Request.new(:get, request.url)
+        fake_request.on_behalf_of(author)
+        author.destroy
+
+        request.headers.merge!(fake_request.headers)
+
+        stub_request(:get, 'http://localhost:5000/actor#main-key').to_raise(Mastodon::HostValidationError)
+      end
+
+      describe '#signed_request?' do
+        it 'returns true' do
+          expect(controller.signed_request?).to be true
+        end
+      end
+
+      describe '#signed_request_account' do
+        it 'returns nil' do
+          expect(controller.signed_request_account).to be_nil
+        end
+      end
+    end
+
     context 'with body' do
       before do
         post :success, body: 'Hello world'