[#1304] Moved all non-mutes / non-blocks fields from User.Info to User. WIP.

This commit is contained in:
Ivan Tashkinov 2019-10-16 21:59:21 +03:00
commit 10ff01acd9
88 changed files with 1069 additions and 1170 deletions

View file

@ -19,7 +19,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "/api/pleroma/admin/users" do
test "Delete" do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
user = insert(:user)
conn =
@ -40,7 +40,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
end
test "Create" do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
conn =
build_conn()
@ -70,7 +70,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
end
test "Cannot create user with exisiting email" do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
user = insert(:user)
conn =
@ -101,7 +101,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
end
test "Cannot create user with exisiting nickname" do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
user = insert(:user)
conn =
@ -132,7 +132,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
end
test "Multiple user creation works in transaction" do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
user = insert(:user)
conn =
@ -181,7 +181,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "/api/pleroma/admin/users/:nickname" do
test "Show", %{conn: conn} do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
user = insert(:user)
conn =
@ -204,7 +204,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
end
test "when the user doesn't exist", %{conn: conn} do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
user = build(:user)
conn =
@ -218,7 +218,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "/api/pleroma/admin/users/follow" do
test "allows to force-follow another user" do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
user = insert(:user)
follower = insert(:user)
@ -244,7 +244,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "/api/pleroma/admin/users/unfollow" do
test "allows to force-unfollow another user" do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
user = insert(:user)
follower = insert(:user)
@ -272,7 +272,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "PUT /api/pleroma/admin/users/tag" do
setup do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
user1 = insert(:user, %{tags: ["x"]})
user2 = insert(:user, %{tags: ["y"]})
user3 = insert(:user, %{tags: ["unchanged"]})
@ -321,7 +321,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "DELETE /api/pleroma/admin/users/tag" do
setup do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
user1 = insert(:user, %{tags: ["x"]})
user2 = insert(:user, %{tags: ["y", "z"]})
user3 = insert(:user, %{tags: ["unchanged"]})
@ -370,7 +370,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "/api/pleroma/admin/users/:nickname/permission_group" do
test "GET is giving user_info" do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
conn =
build_conn()
@ -385,7 +385,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
end
test "/:right POST, can add to a permission group" do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
user = insert(:user)
conn =
@ -405,8 +405,8 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
end
test "/:right DELETE, can remove from a permission group" do
admin = insert(:user, info: %{is_admin: true})
user = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
user = insert(:user, is_admin: true)
conn =
build_conn()
@ -427,7 +427,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "PUT /api/pleroma/admin/users/:nickname/activation_status" do
setup %{conn: conn} do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
conn =
conn
@ -445,7 +445,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
|> put("/api/pleroma/admin/users/#{user.nickname}/activation_status", %{status: false})
user = User.get_cached_by_id(user.id)
assert user.info.deactivated == true
assert user.deactivated == true
assert json_response(conn, :no_content)
log_entry = Repo.one(ModerationLog)
@ -455,14 +455,14 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
end
test "activates the user", %{conn: conn, admin: admin} do
user = insert(:user, info: %{deactivated: true})
user = insert(:user, deactivated: true)
conn =
conn
|> put("/api/pleroma/admin/users/#{user.nickname}/activation_status", %{status: true})
user = User.get_cached_by_id(user.id)
assert user.info.deactivated == false
assert user.deactivated == false
assert json_response(conn, :no_content)
log_entry = Repo.one(ModerationLog)
@ -485,7 +485,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "POST /api/pleroma/admin/email_invite, with valid config" do
setup do
[user: insert(:user, info: %{is_admin: true})]
[user: insert(:user, is_admin: true)]
end
clear_config([:instance, :registrations_open]) do
@ -545,7 +545,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "POST /api/pleroma/admin/users/email_invite, with invalid config" do
setup do
[user: insert(:user, info: %{is_admin: true})]
[user: insert(:user, is_admin: true)]
end
clear_config([:instance, :registrations_open])
@ -577,7 +577,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
end
test "/api/pleroma/admin/users/:nickname/password_reset" do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
user = insert(:user)
conn =
@ -593,7 +593,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "GET /api/pleroma/admin/users" do
setup do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
conn =
build_conn()
@ -609,7 +609,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
users =
[
%{
"deactivated" => admin.info.deactivated,
"deactivated" => admin.deactivated,
"id" => admin.id,
"nickname" => admin.nickname,
"roles" => %{"admin" => true, "moderator" => false},
@ -619,7 +619,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
"display_name" => HTML.strip_tags(admin.name || admin.nickname)
},
%{
"deactivated" => user.info.deactivated,
"deactivated" => user.deactivated,
"id" => user.id,
"nickname" => user.nickname,
"roles" => %{"admin" => false, "moderator" => false},
@ -660,7 +660,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
"page_size" => 50,
"users" => [
%{
"deactivated" => user.info.deactivated,
"deactivated" => user.deactivated,
"id" => user.id,
"nickname" => user.nickname,
"roles" => %{"admin" => false, "moderator" => false},
@ -684,7 +684,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
"page_size" => 50,
"users" => [
%{
"deactivated" => user.info.deactivated,
"deactivated" => user.deactivated,
"id" => user.id,
"nickname" => user.nickname,
"roles" => %{"admin" => false, "moderator" => false},
@ -708,7 +708,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
"page_size" => 50,
"users" => [
%{
"deactivated" => user.info.deactivated,
"deactivated" => user.deactivated,
"id" => user.id,
"nickname" => user.nickname,
"roles" => %{"admin" => false, "moderator" => false},
@ -732,7 +732,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
"page_size" => 50,
"users" => [
%{
"deactivated" => user.info.deactivated,
"deactivated" => user.deactivated,
"id" => user.id,
"nickname" => user.nickname,
"roles" => %{"admin" => false, "moderator" => false},
@ -756,7 +756,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
"page_size" => 50,
"users" => [
%{
"deactivated" => user.info.deactivated,
"deactivated" => user.deactivated,
"id" => user.id,
"nickname" => user.nickname,
"roles" => %{"admin" => false, "moderator" => false},
@ -780,7 +780,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
"page_size" => 1,
"users" => [
%{
"deactivated" => user.info.deactivated,
"deactivated" => user.deactivated,
"id" => user.id,
"nickname" => user.nickname,
"roles" => %{"admin" => false, "moderator" => false},
@ -799,7 +799,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
"page_size" => 1,
"users" => [
%{
"deactivated" => user2.info.deactivated,
"deactivated" => user2.deactivated,
"id" => user2.id,
"nickname" => user2.nickname,
"roles" => %{"admin" => false, "moderator" => false},
@ -813,7 +813,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
end
test "only local users" do
admin = insert(:user, info: %{is_admin: true}, nickname: "john")
admin = insert(:user, is_admin: true, nickname: "john")
user = insert(:user, nickname: "bob")
insert(:user, nickname: "bobb", local: false)
@ -828,7 +828,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
"page_size" => 50,
"users" => [
%{
"deactivated" => user.info.deactivated,
"deactivated" => user.deactivated,
"id" => user.id,
"nickname" => user.nickname,
"roles" => %{"admin" => false, "moderator" => false},
@ -842,7 +842,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
end
test "only local users with no query", %{admin: old_admin} do
admin = insert(:user, info: %{is_admin: true}, nickname: "john")
admin = insert(:user, is_admin: true, nickname: "john")
user = insert(:user, nickname: "bob")
insert(:user, nickname: "bobb", local: false)
@ -855,7 +855,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
users =
[
%{
"deactivated" => user.info.deactivated,
"deactivated" => user.deactivated,
"id" => user.id,
"nickname" => user.nickname,
"roles" => %{"admin" => false, "moderator" => false},
@ -865,7 +865,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
"display_name" => HTML.strip_tags(user.name || user.nickname)
},
%{
"deactivated" => admin.info.deactivated,
"deactivated" => admin.deactivated,
"id" => admin.id,
"nickname" => admin.nickname,
"roles" => %{"admin" => true, "moderator" => false},
@ -895,7 +895,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
end
test "load only admins", %{conn: conn, admin: admin} do
second_admin = insert(:user, info: %{is_admin: true})
second_admin = insert(:user, is_admin: true)
insert(:user)
insert(:user)
@ -934,7 +934,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
end
test "load only moderators", %{conn: conn} do
moderator = insert(:user, info: %{is_moderator: true})
moderator = insert(:user, is_moderator: true)
insert(:user)
insert(:user)
@ -999,11 +999,11 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
end
test "it works with multiple filters" do
admin = insert(:user, nickname: "john", info: %{is_admin: true})
user = insert(:user, nickname: "bob", local: false, info: %{deactivated: true})
admin = insert(:user, nickname: "john", is_admin: true)
user = insert(:user, nickname: "bob", local: false, deactivated: true)
insert(:user, nickname: "ken", local: true, info: %{deactivated: true})
insert(:user, nickname: "bobb", local: false, info: %{deactivated: false})
insert(:user, nickname: "ken", local: true, deactivated: true)
insert(:user, nickname: "bobb", local: false, deactivated: false)
conn =
build_conn()
@ -1015,7 +1015,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
"page_size" => 50,
"users" => [
%{
"deactivated" => user.info.deactivated,
"deactivated" => user.deactivated,
"id" => user.id,
"nickname" => user.nickname,
"roles" => %{"admin" => false, "moderator" => false},
@ -1030,7 +1030,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
end
test "PATCH /api/pleroma/admin/users/:nickname/toggle_activation" do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
user = insert(:user)
conn =
@ -1040,7 +1040,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
assert json_response(conn, 200) ==
%{
"deactivated" => !user.info.deactivated,
"deactivated" => !user.deactivated,
"id" => user.id,
"nickname" => user.nickname,
"roles" => %{"admin" => false, "moderator" => false},
@ -1058,7 +1058,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "POST /api/pleroma/admin/users/invite_token" do
setup do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
conn =
build_conn()
@ -1122,7 +1122,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "GET /api/pleroma/admin/users/invites" do
setup do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
conn =
build_conn()
@ -1160,7 +1160,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "POST /api/pleroma/admin/users/revoke_invite" do
test "with token" do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
{:ok, invite} = UserInviteToken.create_invite()
conn =
@ -1180,7 +1180,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
end
test "with invalid token" do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
conn =
build_conn()
@ -1193,7 +1193,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "GET /api/pleroma/admin/reports/:id" do
setup %{conn: conn} do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
%{conn: assign(conn, :user, admin)}
end
@ -1226,7 +1226,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "PUT /api/pleroma/admin/reports/:id" do
setup %{conn: conn} do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
[reporter, target_user] = insert_pair(:user)
activity = insert(:note_activity, user: target_user)
@ -1287,7 +1287,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "GET /api/pleroma/admin/reports" do
setup %{conn: conn} do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
%{conn: assign(conn, :user, admin)}
end
@ -1407,7 +1407,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
#
describe "POST /api/pleroma/admin/reports/:id/respond" do
setup %{conn: conn} do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
%{conn: assign(conn, :user, admin), admin: admin}
end
@ -1462,7 +1462,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "PUT /api/pleroma/admin/statuses/:id" do
setup %{conn: conn} do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
activity = insert(:note_activity)
%{conn: assign(conn, :user, admin), id: activity.id, admin: admin}
@ -1528,7 +1528,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "DELETE /api/pleroma/admin/statuses/:id" do
setup %{conn: conn} do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
activity = insert(:note_activity)
%{conn: assign(conn, :user, admin), id: activity.id, admin: admin}
@ -1558,7 +1558,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "GET /api/pleroma/admin/config" do
setup %{conn: conn} do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
%{conn: assign(conn, :user, admin)}
end
@ -1595,7 +1595,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "POST /api/pleroma/admin/config" do
setup %{conn: conn} do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
temp_file = "config/test.exported_from_db.secret.exs"
@ -2163,7 +2163,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "config mix tasks run" do
setup %{conn: conn} do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
temp_file = "config/test.exported_from_db.secret.exs"
@ -2199,7 +2199,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "GET /api/pleroma/admin/users/:nickname/statuses" do
setup do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
user = insert(:user)
date1 = (DateTime.to_unix(DateTime.utc_now()) + 2000) |> DateTime.from_unix!()
@ -2256,8 +2256,8 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "GET /api/pleroma/admin/moderation_log" do
setup %{conn: conn} do
admin = insert(:user, info: %{is_admin: true})
moderator = insert(:user, info: %{is_moderator: true})
admin = insert(:user, is_admin: true)
moderator = insert(:user, is_moderator: true)
%{conn: assign(conn, :user, admin), admin: admin, moderator: moderator}
end
@ -2465,14 +2465,14 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "PATCH /users/:nickname/force_password_reset" do
setup %{conn: conn} do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
user = insert(:user)
%{conn: assign(conn, :user, admin), admin: admin, user: user}
end
test "sets password_reset_pending to true", %{admin: admin, user: user} do
assert user.info.password_reset_pending == false
assert user.password_reset_pending == false
conn =
build_conn()
@ -2483,7 +2483,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
ObanHelpers.perform_all()
assert User.get_by_id(user.id).info.password_reset_pending == true
assert User.get_by_id(user.id).password_reset_pending == true
end
end
end

View file

@ -47,9 +47,9 @@ defmodule Pleroma.Web.AdminAPI.SearchTest do
end
test "it returns active/deactivated users" do
insert(:user, info: %{deactivated: true})
insert(:user, info: %{deactivated: true})
insert(:user, info: %{deactivated: false})
insert(:user, deactivated: true)
insert(:user, deactivated: true)
insert(:user, deactivated: false)
{:ok, _results, active_count} =
Search.user(%{
@ -70,7 +70,7 @@ defmodule Pleroma.Web.AdminAPI.SearchTest do
test "it returns specific user" do
insert(:user)
insert(:user)
user = insert(:user, nickname: "bob", local: true, info: %{deactivated: false})
user = insert(:user, nickname: "bob", local: true, deactivated: false)
{:ok, _results, total_count} = Search.user(%{query: ""})
@ -108,7 +108,7 @@ defmodule Pleroma.Web.AdminAPI.SearchTest do
end
test "it returns admin user" do
admin = insert(:user, info: %{is_admin: true})
admin = insert(:user, is_admin: true)
insert(:user)
insert(:user)
@ -119,7 +119,7 @@ defmodule Pleroma.Web.AdminAPI.SearchTest do
end
test "it returns moderator user" do
moderator = insert(:user, info: %{is_moderator: true})
moderator = insert(:user, is_moderator: true)
insert(:user)
insert(:user)

View file

@ -49,6 +49,8 @@ defmodule Pleroma.Web.AdminAPI.ReportViewTest do
{:ok, report_activity} =
CommonAPI.report(user, %{"account_id" => other_user.id, "status_ids" => [activity.id]})
other_user = Pleroma.User.get_by_id(other_user.id)
expected = %{
content: nil,
actor: