forked from AkkomaGang/akkoma
Merge branch '502_stats_fix_for_nil_info_deactivated' into 'develop'
[#502] Stats fix (users with nil or missing `info.deactivated` should be treated active) Closes #502 See merge request pleroma/pleroma!696
This commit is contained in:
commit
7d55bb0896
2 changed files with 12 additions and 1 deletions
|
@ -901,7 +901,7 @@ def local_user_query do
|
|||
def active_local_user_query do
|
||||
from(
|
||||
u in local_user_query(),
|
||||
where: fragment("?->'deactivated' @> 'false'", u.info)
|
||||
where: fragment("not (?->'deactivated' @> 'true')", u.info)
|
||||
)
|
||||
end
|
||||
|
||||
|
|
|
@ -10,6 +10,7 @@ defmodule Pleroma.Web.MastodonAPI.MastodonAPIControllerTest do
|
|||
alias Pleroma.Web.{OStatus, CommonAPI}
|
||||
alias Pleroma.Web.ActivityPub.ActivityPub
|
||||
alias Pleroma.Web.MastodonAPI.FilterView
|
||||
alias Ecto.Changeset
|
||||
import Pleroma.Factory
|
||||
import ExUnit.CaptureLog
|
||||
import Tesla.Mock
|
||||
|
@ -1483,6 +1484,16 @@ test "get instance information", %{conn: conn} do
|
|||
|
||||
{:ok, _} = TwitterAPI.create_status(user, %{"status" => "cofe"})
|
||||
|
||||
# Stats should count users with missing or nil `info.deactivated` value
|
||||
user = Repo.get(User, user.id)
|
||||
info_change = Changeset.change(user.info, %{deactivated: nil})
|
||||
|
||||
{:ok, _user} =
|
||||
user
|
||||
|> Changeset.change()
|
||||
|> Changeset.put_embed(:info, info_change)
|
||||
|> User.update_and_set_cache()
|
||||
|
||||
Pleroma.Stats.update_stats()
|
||||
|
||||
conn = get(conn, "/api/v1/instance")
|
||||
|
|
Loading…
Reference in a new issue