diff options
author | Roman Chvanikov <chvanikoff@pm.me> | 2020-01-21 19:45:13 +0300 |
---|---|---|
committer | Roman Chvanikov <chvanikoff@pm.me> | 2020-01-21 19:45:13 +0300 |
commit | 22e94bb2c7a4de93a741b7ca45148cee4a0d601a (patch) | |
tree | c1e388a0d21ff768d8b53bc53662d96cbc3d2ae1 /test/repo_test.exs | |
parent | cde828ff7df64740f36b2fc9dfdbfc8d76a8a78d (diff) | |
parent | 04c9ca5d68eb4d9c8abc82a91d5df3c483089b9b (diff) | |
download | pleroma-22e94bb2c7a4de93a741b7ca45148cee4a0d601a.tar.gz pleroma-22e94bb2c7a4de93a741b7ca45148cee4a0d601a.zip |
Merge branch 'develop' into fix/attachments-cleanup
Diffstat (limited to 'test/repo_test.exs')
-rw-r--r-- | test/repo_test.exs | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/test/repo_test.exs b/test/repo_test.exs index 85b64d4d1..5526b0327 100644 --- a/test/repo_test.exs +++ b/test/repo_test.exs @@ -4,7 +4,10 @@ defmodule Pleroma.RepoTest do use Pleroma.DataCase + import ExUnit.CaptureLog import Pleroma.Factory + import Mock + alias Pleroma.User describe "find_resource/1" do @@ -46,4 +49,44 @@ defmodule Pleroma.RepoTest do assert Repo.get_assoc(token, :user) == {:error, :not_found} end end + + describe "check_migrations_applied!" do + setup_with_mocks([ + {Ecto.Migrator, [], + [ + with_repo: fn repo, fun -> passthrough([repo, fun]) end, + migrations: fn Pleroma.Repo -> + [ + {:up, 20_191_128_153_944, "fix_missing_following_count"}, + {:up, 20_191_203_043_610, "create_report_notes"}, + {:down, 20_191_220_174_645, "add_scopes_to_pleroma_feo_auth_records"} + ] + end + ]} + ]) do + :ok + end + + test "raises if it detects unapplied migrations" do + assert_raise Pleroma.Repo.UnappliedMigrationsError, fn -> + capture_log(&Repo.check_migrations_applied!/0) + end + end + + test "doesn't do anything if disabled" do + disable_migration_check = + Pleroma.Config.get([:i_am_aware_this_may_cause_data_loss, :disable_migration_check]) + + Pleroma.Config.put([:i_am_aware_this_may_cause_data_loss, :disable_migration_check], true) + + on_exit(fn -> + Pleroma.Config.put( + [:i_am_aware_this_may_cause_data_loss, :disable_migration_check], + disable_migration_check + ) + end) + + assert :ok == Repo.check_migrations_applied!() + end + end end |