1 defmodule Pleroma.Repo.Migrations.MoveWelcomeSettingsTest do
4 import Pleroma.Tests.Helpers
7 setup_all do: require_migration("20200724133313_move_welcome_settings")
10 test "converts welcome settings", %{migration: migration} do
15 welcome_message: "Test message",
16 welcome_user_nickname: "jimm",
22 instance_config = ConfigDB.get_by_params(%{group: :pleroma, key: :instance})
23 welcome_config = ConfigDB.get_by_params(%{group: :pleroma, key: :welcome})
25 assert instance_config.value == [name: "Pleroma"]
27 assert welcome_config.value == [
30 message: "Test message",
31 sender_nickname: "jimm"
35 html: "Welcome to <%= instance_name %>",
37 subject: "Welcome to <%= instance_name %>",
38 text: "Welcome to <%= instance_name %>"
43 test "does nothing when message empty", %{migration: migration} do
49 welcome_user_nickname: "jimm",
55 instance_config = ConfigDB.get_by_params(%{group: :pleroma, key: :instance})
56 refute ConfigDB.get_by_params(%{group: :pleroma, key: :welcome})
57 assert instance_config.value == [name: "Pleroma"]
60 test "does nothing when welcome_message not set", %{migration: migration} do
64 value: [welcome_user_nickname: "jimm", name: "Pleroma"]
68 instance_config = ConfigDB.get_by_params(%{group: :pleroma, key: :instance})
69 refute ConfigDB.get_by_params(%{group: :pleroma, key: :welcome})
70 assert instance_config.value == [name: "Pleroma"]
75 test "revert new settings to old when instance setting not exists", %{migration: migration} do
82 message: "Test message",
83 sender_nickname: "jimm"
87 html: "Welcome to <%= instance_name %>",
89 subject: "Welcome to <%= instance_name %>",
90 text: "Welcome to <%= instance_name %>"
97 refute ConfigDB.get_by_params(%{group: :pleroma, key: :welcome})
98 instance_config = ConfigDB.get_by_params(%{group: :pleroma, key: :instance})
100 assert instance_config.value == [
101 welcome_user_nickname: "jimm",
102 welcome_message: "Test message"
106 test "revert new settings to old when instance setting exists", %{migration: migration} do
107 insert(:config, group: :pleroma, key: :instance, value: [name: "Pleroma App"])
115 message: "Test message",
116 sender_nickname: "jimm"
120 html: "Welcome to <%= instance_name %>",
122 subject: "Welcome to <%= instance_name %>",
123 text: "Welcome to <%= instance_name %>"
130 refute ConfigDB.get_by_params(%{group: :pleroma, key: :welcome})
131 instance_config = ConfigDB.get_by_params(%{group: :pleroma, key: :instance})
133 assert instance_config.value == [
135 welcome_user_nickname: "jimm",
136 welcome_message: "Test message"