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
|
@ -120,6 +120,12 @@ def raw_nodeinfo do
|
||||||
banner: Config.get([:instance, :banner_upload_limit]),
|
banner: Config.get([:instance, :banner_upload_limit]),
|
||||||
background: Config.get([:instance, :background_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),
|
accountActivationRequired: Config.get([:instance, :account_activation_required], false),
|
||||||
invitesEnabled: Config.get([:instance, :invites_enabled], false),
|
invitesEnabled: Config.get([:instance, :invites_enabled], false),
|
||||||
mailerEnabled: Config.get([Pleroma.Emails.Mailer, :enabled], false),
|
mailerEnabled: Config.get([Pleroma.Emails.Mailer, :enabled], false),
|
||||||
|
|
|
@ -61,6 +61,33 @@ test "returns software.repository field in nodeinfo 2.1", %{conn: conn} do
|
||||||
assert Pleroma.Application.repository() == result["software"]["repository"]
|
assert Pleroma.Application.repository() == result["software"]["repository"]
|
||||||
end
|
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
|
test "it returns the safe_dm_mentions feature if enabled", %{conn: conn} do
|
||||||
option = Pleroma.Config.get([:instance, :safe_dm_mentions])
|
option = Pleroma.Config.get([:instance, :safe_dm_mentions])
|
||||||
Pleroma.Config.put([:instance, :safe_dm_mentions], true)
|
Pleroma.Config.put([:instance, :safe_dm_mentions], true)
|
||||||
|
|
Loading…
Reference in a new issue