Tests: Reset all cachex caches between synchronous tests
Don't bother in the async case, it doesn't make sense there.
This commit is contained in:
parent
6bb4f4e172
commit
c1129ff674
@ -116,12 +116,11 @@ defmodule Pleroma.Web.ConnCase do
|
|||||||
end
|
end
|
||||||
|
|
||||||
setup tags do
|
setup tags do
|
||||||
Cachex.clear(:user_cache)
|
|
||||||
Cachex.clear(:object_cache)
|
|
||||||
:ok = Ecto.Adapters.SQL.Sandbox.checkout(Pleroma.Repo)
|
:ok = Ecto.Adapters.SQL.Sandbox.checkout(Pleroma.Repo)
|
||||||
|
|
||||||
unless tags[:async] do
|
unless tags[:async] do
|
||||||
Ecto.Adapters.SQL.Sandbox.mode(Pleroma.Repo, {:shared, self()})
|
Ecto.Adapters.SQL.Sandbox.mode(Pleroma.Repo, {:shared, self()})
|
||||||
|
Pleroma.DataCase.clear_cachex()
|
||||||
end
|
end
|
||||||
|
|
||||||
if tags[:needs_streamer] do
|
if tags[:needs_streamer] do
|
||||||
|
@ -45,13 +45,29 @@ defmodule Pleroma.DataCase do
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def clear_cachex do
|
||||||
|
Pleroma.Supervisor
|
||||||
|
|> Supervisor.which_children()
|
||||||
|
|> Enum.each(fn
|
||||||
|
{name, _, _, [Cachex]} ->
|
||||||
|
name
|
||||||
|
|> to_string
|
||||||
|
|> String.trim_leading("cachex_")
|
||||||
|
|> Kernel.<>("_cache")
|
||||||
|
|> String.to_existing_atom()
|
||||||
|
|> Cachex.clear()
|
||||||
|
|
||||||
|
_ ->
|
||||||
|
nil
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
|
||||||
setup tags do
|
setup tags do
|
||||||
Cachex.clear(:user_cache)
|
|
||||||
Cachex.clear(:object_cache)
|
|
||||||
:ok = Ecto.Adapters.SQL.Sandbox.checkout(Pleroma.Repo)
|
:ok = Ecto.Adapters.SQL.Sandbox.checkout(Pleroma.Repo)
|
||||||
|
|
||||||
unless tags[:async] do
|
unless tags[:async] do
|
||||||
Ecto.Adapters.SQL.Sandbox.mode(Pleroma.Repo, {:shared, self()})
|
Ecto.Adapters.SQL.Sandbox.mode(Pleroma.Repo, {:shared, self()})
|
||||||
|
clear_cachex()
|
||||||
end
|
end
|
||||||
|
|
||||||
if tags[:needs_streamer] do
|
if tags[:needs_streamer] do
|
||||||
|
Loading…
Reference in New Issue
Block a user