Tests: fix more tests
This commit is contained in:
parent
dca41cc4a3
commit
05352330bb
@ -7,9 +7,11 @@ defmodule Pleroma.ApplicationRequirementsTest do
|
||||
|
||||
import ExUnit.CaptureLog
|
||||
import Mock
|
||||
import Mox
|
||||
|
||||
alias Pleroma.ApplicationRequirements
|
||||
alias Pleroma.Repo
|
||||
alias Pleroma.UnstubbedConfigMock, as: ConfigMock
|
||||
|
||||
describe "check_repo_pool_size!/1" do
|
||||
test "raises if the pool size is unexpected" do
|
||||
@ -37,7 +39,11 @@ defmodule Pleroma.ApplicationRequirementsTest do
|
||||
|
||||
test "warns if welcome email enabled but mail disabled" do
|
||||
clear_config([:welcome, :email, :enabled], true)
|
||||
clear_config([Pleroma.Emails.Mailer, :enabled], false)
|
||||
|
||||
ConfigMock
|
||||
|> stub(:get, fn
|
||||
[Pleroma.Emails.Mailer, :enabled] -> false
|
||||
end)
|
||||
|
||||
assert capture_log(fn ->
|
||||
assert Pleroma.ApplicationRequirements.verify!() == :ok
|
||||
@ -59,7 +65,11 @@ defmodule Pleroma.ApplicationRequirementsTest do
|
||||
|
||||
test "warns if account confirmation is required but mailer isn't enabled" do
|
||||
clear_config([:instance, :account_activation_required], true)
|
||||
clear_config([Pleroma.Emails.Mailer, :enabled], false)
|
||||
|
||||
ConfigMock
|
||||
|> stub(:get, fn
|
||||
[Pleroma.Emails.Mailer, :enabled] -> false
|
||||
end)
|
||||
|
||||
assert capture_log(fn ->
|
||||
assert Pleroma.ApplicationRequirements.verify!() == :ok
|
||||
@ -74,7 +84,12 @@ defmodule Pleroma.ApplicationRequirementsTest do
|
||||
|
||||
test "doesn't do anything if account confirmation is required and mailer is enabled" do
|
||||
clear_config([:instance, :account_activation_required], true)
|
||||
clear_config([Pleroma.Emails.Mailer, :enabled], true)
|
||||
|
||||
ConfigMock
|
||||
|> stub(:get, fn
|
||||
[Pleroma.Emails.Mailer, :enabled] -> true
|
||||
end)
|
||||
|
||||
assert Pleroma.ApplicationRequirements.verify!() == :ok
|
||||
end
|
||||
end
|
||||
|
@ -3,9 +3,12 @@
|
||||
# SPDX-License-Identifier: AGPL-3.0-only
|
||||
|
||||
defmodule Pleroma.Emails.MailerTest do
|
||||
use Pleroma.DataCase
|
||||
alias Pleroma.Emails.Mailer
|
||||
use Pleroma.DataCase, async: true
|
||||
|
||||
alias Pleroma.Emails.Mailer
|
||||
alias Pleroma.UnstubbedConfigMock, as: ConfigMock
|
||||
|
||||
import Mox
|
||||
import Swoosh.TestAssertions
|
||||
|
||||
@email %Swoosh.Email{
|
||||
@ -14,10 +17,22 @@ defmodule Pleroma.Emails.MailerTest do
|
||||
subject: "Pleroma test email",
|
||||
to: [{"Test User", "user1@example.com"}]
|
||||
}
|
||||
setup do: clear_config([Pleroma.Emails.Mailer, :enabled], true)
|
||||
|
||||
setup do
|
||||
ConfigMock
|
||||
|> stub(:get, fn
|
||||
[Mailer, :enabled] -> true
|
||||
end)
|
||||
|
||||
:ok
|
||||
end
|
||||
|
||||
test "not send email when mailer is disabled" do
|
||||
clear_config([Pleroma.Emails.Mailer, :enabled], false)
|
||||
ConfigMock
|
||||
|> stub(:get, fn
|
||||
[Mailer, :enabled] -> false
|
||||
end)
|
||||
|
||||
Mailer.deliver(@email)
|
||||
:timer.sleep(100)
|
||||
|
||||
|
@ -14,6 +14,11 @@ defmodule Pleroma.User.WelcomeEmailTest do
|
||||
|
||||
setup do: clear_config([:welcome])
|
||||
|
||||
setup do
|
||||
Mox.stub_with(Pleroma.UnstubbedConfigMock, Pleroma.Test.StaticConfig)
|
||||
:ok
|
||||
end
|
||||
|
||||
describe "send_email/1" do
|
||||
test "send a welcome email" do
|
||||
user = insert(:user, name: "Jimm")
|
||||
|
@ -991,7 +991,11 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
|
||||
|
||||
describe "PATCH /resend_confirmation_email" do
|
||||
test "it resend emails for two users", %{conn: conn, admin: admin} do
|
||||
ConfigMock
|
||||
|> Mox.stub_with(Pleroma.Test.StaticConfig)
|
||||
|
||||
clear_config([:instance, :admin_privileges], [:users_manage_credentials])
|
||||
|
||||
[first_user, second_user] = insert_pair(:user, is_confirmed: false)
|
||||
|
||||
ret_conn =
|
||||
@ -1079,7 +1083,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
|
||||
describe "/api/pleroma/backups" do
|
||||
test "it creates a backup", %{conn: conn} do
|
||||
ConfigMock
|
||||
|> Mox.stub_with(Pleroma.Config)
|
||||
|> Mox.stub_with(Pleroma.Test.StaticConfig)
|
||||
|
||||
admin = %{id: admin_id, nickname: admin_nickname} = insert(:user, is_admin: true)
|
||||
token = insert(:oauth_admin_token, user: admin)
|
||||
|
@ -5,9 +5,11 @@
|
||||
defmodule Pleroma.Web.AdminAPI.InviteControllerTest do
|
||||
use Pleroma.Web.ConnCase, async: false
|
||||
|
||||
import Mox
|
||||
import Pleroma.Factory
|
||||
|
||||
alias Pleroma.Repo
|
||||
alias Pleroma.UnstubbedConfigMock, as: ConfigMock
|
||||
alias Pleroma.UserInviteToken
|
||||
|
||||
setup do
|
||||
@ -19,6 +21,9 @@ defmodule Pleroma.Web.AdminAPI.InviteControllerTest do
|
||||
|> assign(:user, admin)
|
||||
|> assign(:token, token)
|
||||
|
||||
ConfigMock
|
||||
|> stub_with(Pleroma.Test.StaticConfig)
|
||||
|
||||
{:ok, %{admin: admin, token: token, conn: conn}}
|
||||
end
|
||||
|
||||
|
@ -5,11 +5,13 @@
|
||||
defmodule Pleroma.Web.PleromaAPI.AccountControllerTest do
|
||||
use Pleroma.Web.ConnCase
|
||||
|
||||
alias Pleroma.Config
|
||||
alias Pleroma.Test.StaticConfig, as: Config
|
||||
alias Pleroma.Tests.ObanHelpers
|
||||
alias Pleroma.UnstubbedConfigMock, as: ConfigMock
|
||||
alias Pleroma.User
|
||||
alias Pleroma.Web.CommonAPI
|
||||
|
||||
import Mox
|
||||
import Pleroma.Factory
|
||||
import Swoosh.TestAssertions
|
||||
|
||||
@ -25,7 +27,15 @@ defmodule Pleroma.Web.PleromaAPI.AccountControllerTest do
|
||||
[user: user]
|
||||
end
|
||||
|
||||
setup do: clear_config([:instance, :account_activation_required], true)
|
||||
setup do
|
||||
ConfigMock
|
||||
|> stub(:get, fn
|
||||
[:instance, :account_activation_required] -> true
|
||||
path -> Config.get(path)
|
||||
end)
|
||||
|
||||
:ok
|
||||
end
|
||||
|
||||
test "resend account confirmation email", %{conn: conn, user: user} do
|
||||
conn
|
||||
|
@ -11,9 +11,15 @@ defmodule Pleroma.Web.TwitterAPI.PasswordControllerTest do
|
||||
alias Pleroma.Tests.ObanHelpers
|
||||
alias Pleroma.User
|
||||
alias Pleroma.Web.OAuth.Token
|
||||
|
||||
import Pleroma.Factory
|
||||
import Swoosh.TestAssertions
|
||||
|
||||
setup do
|
||||
Mox.stub_with(Pleroma.UnstubbedConfigMock, Pleroma.Test.StaticConfig)
|
||||
:ok
|
||||
end
|
||||
|
||||
describe "GET /api/pleroma/password_reset/token" do
|
||||
test "it returns error when token invalid", %{conn: conn} do
|
||||
response =
|
||||
|
@ -16,6 +16,11 @@ defmodule Pleroma.Web.TwitterAPI.TwitterAPITest do
|
||||
:ok
|
||||
end
|
||||
|
||||
setup do
|
||||
Mox.stub_with(Pleroma.UnstubbedConfigMock, Pleroma.Test.StaticConfig)
|
||||
:ok
|
||||
end
|
||||
|
||||
test "it registers a new user and returns the user." do
|
||||
data = %{
|
||||
:username => "lain",
|
||||
@ -48,6 +53,10 @@ defmodule Pleroma.Web.TwitterAPI.TwitterAPITest do
|
||||
test "it sends confirmation email if :account_activation_required is specified in instance config" do
|
||||
clear_config([:instance, :account_activation_required], true)
|
||||
|
||||
Pleroma.UnstubbedConfigMock
|
||||
|> Mox.expect(:get, fn [:instance, :account_activation_required] -> true end)
|
||||
|> Mox.expect(:get, fn [Pleroma.Emails.Mailer, :enabled] -> true end)
|
||||
|
||||
data = %{
|
||||
:username => "lain",
|
||||
:email => "lain@wired.jp",
|
||||
@ -64,8 +73,8 @@ defmodule Pleroma.Web.TwitterAPI.TwitterAPITest do
|
||||
|
||||
email = Pleroma.Emails.UserEmail.account_confirmation_email(user)
|
||||
|
||||
notify_email = Pleroma.Config.get([:instance, :notify_email])
|
||||
instance_name = Pleroma.Config.get([:instance, :name])
|
||||
notify_email = Pleroma.Test.StaticConfig.get([:instance, :notify_email])
|
||||
instance_name = Pleroma.Test.StaticConfig.get([:instance, :name])
|
||||
|
||||
Swoosh.TestAssertions.assert_email_sent(
|
||||
from: {instance_name, notify_email},
|
||||
|
Loading…
Reference in New Issue
Block a user