1
0
Fork 0
mirror of https://github.com/mastodon/mastodon.git synced 2024-08-20 21:08:15 -07:00

Add client_secret_expires_at to Application, for forward-compatibility with expiring applications

This commit is contained in:
Emelia Smith 2024-05-15 23:56:20 +02:00
parent 2da2a1dae9
commit 9544ee54c8
No known key found for this signature in database
3 changed files with 9 additions and 1 deletions

View file

@ -1,7 +1,7 @@
# frozen_string_literal: true # frozen_string_literal: true
class REST::CredentialApplicationSerializer < REST::ApplicationSerializer class REST::CredentialApplicationSerializer < REST::ApplicationSerializer
attributes :client_id, :client_secret attributes :client_id, :client_secret, :client_secret_expires_at
def client_id def client_id
object.uid object.uid
@ -10,4 +10,10 @@ class REST::CredentialApplicationSerializer < REST::ApplicationSerializer
def client_secret def client_secret
object.secret object.secret
end end
# Added for future forwards compatibility when we may decide to expire OAuth
# Applications. Set to zero means that the client_secret never expires.
def client_secret_expires_at
0
end
end end

View file

@ -39,6 +39,7 @@ describe 'Credentials' do
expect(body_as_json[:client_id]).to_not be_present expect(body_as_json[:client_id]).to_not be_present
expect(body_as_json[:client_secret]).to_not be_present expect(body_as_json[:client_secret]).to_not be_present
expect(body_as_json[:client_secret_expires_at]).to_not be_present
end end
end end

View file

@ -40,6 +40,7 @@ RSpec.describe 'Apps' do
id: app.id.to_s, id: app.id.to_s,
client_id: app.uid, client_id: app.uid,
client_secret: app.secret, client_secret: app.secret,
client_secret_expires_at: 0,
name: client_name, name: client_name,
website: website, website: website,
scopes: ['read', 'write'], scopes: ['read', 'write'],