mirror of
https://git.pleroma.social/pleroma/pleroma.git
synced 2024-12-22 08:06:55 +00:00
Merge branch 'nodeinfo-fields-limit' into 'develop'
Add fieldsLimit to metadata of nodeinfo See merge request pleroma/pleroma!1983
This commit is contained in:
commit
81cba405af
2 changed files with 33 additions and 0 deletions
|
@ -120,6 +120,12 @@ defmodule Pleroma.Web.Nodeinfo.NodeinfoController do
|
|||
banner: Config.get([:instance, :banner_upload_limit]),
|
||||
background: Config.get([:instance, :background_upload_limit])
|
||||
},
|
||||
fieldsLimits: %{
|
||||
maxFields: Config.get([:instance, :max_account_fields]),
|
||||
maxRemoteFields: Config.get([:instance, :max_remote_account_fields]),
|
||||
nameLength: Config.get([:instance, :account_field_name_length]),
|
||||
valueLength: Config.get([:instance, :account_field_value_length])
|
||||
},
|
||||
accountActivationRequired: Config.get([:instance, :account_activation_required], false),
|
||||
invitesEnabled: Config.get([:instance, :invites_enabled], false),
|
||||
mailerEnabled: Config.get([Pleroma.Emails.Mailer, :enabled], false),
|
||||
|
|
|
@ -61,6 +61,33 @@ defmodule Pleroma.Web.NodeInfoTest do
|
|||
assert Pleroma.Application.repository() == result["software"]["repository"]
|
||||
end
|
||||
|
||||
test "returns fieldsLimits field", %{conn: conn} do
|
||||
max_account_fields = Pleroma.Config.get([:instance, :max_account_fields])
|
||||
max_remote_account_fields = Pleroma.Config.get([:instance, :max_remote_account_fields])
|
||||
account_field_name_length = Pleroma.Config.get([:instance, :account_field_name_length])
|
||||
account_field_value_length = Pleroma.Config.get([:instance, :account_field_value_length])
|
||||
|
||||
Pleroma.Config.put([:instance, :max_account_fields], 10)
|
||||
Pleroma.Config.put([:instance, :max_remote_account_fields], 15)
|
||||
Pleroma.Config.put([:instance, :account_field_name_length], 255)
|
||||
Pleroma.Config.put([:instance, :account_field_value_length], 2048)
|
||||
|
||||
response =
|
||||
conn
|
||||
|> get("/nodeinfo/2.1.json")
|
||||
|> json_response(:ok)
|
||||
|
||||
assert response["metadata"]["fieldsLimits"]["maxFields"] == 10
|
||||
assert response["metadata"]["fieldsLimits"]["maxRemoteFields"] == 15
|
||||
assert response["metadata"]["fieldsLimits"]["nameLength"] == 255
|
||||
assert response["metadata"]["fieldsLimits"]["valueLength"] == 2048
|
||||
|
||||
Pleroma.Config.put([:instance, :max_account_fields], max_account_fields)
|
||||
Pleroma.Config.put([:instance, :max_remote_account_fields], max_remote_account_fields)
|
||||
Pleroma.Config.put([:instance, :account_field_name_length], account_field_name_length)
|
||||
Pleroma.Config.put([:instance, :account_field_value_length], account_field_value_length)
|
||||
end
|
||||
|
||||
test "it returns the safe_dm_mentions feature if enabled", %{conn: conn} do
|
||||
option = Pleroma.Config.get([:instance, :safe_dm_mentions])
|
||||
Pleroma.Config.put([:instance, :safe_dm_mentions], true)
|
||||
|
|
Loading…
Reference in a new issue