akkoma/test/test_helper.exs

33 lines
1.1 KiB
Elixir
Raw Normal View History

2018-12-23 13:11:29 -07:00
# Pleroma: A lightweight social networking server
# Copyright © 2017-2021 Pleroma Authors <https://pleroma.social/>
2018-12-23 13:11:29 -07:00
# SPDX-License-Identifier: AGPL-3.0-only
2019-11-26 13:24:34 -07:00
os_exclude = if :os.type() == {:unix, :darwin}, do: [skip_on_mac: true], else: []
2021-12-21 21:04:15 -07:00
ExUnit.start(exclude: [:federated, :erratic] ++ os_exclude)
2019-11-26 13:24:34 -07:00
2017-03-17 10:09:58 -06:00
Ecto.Adapters.SQL.Sandbox.mode(Pleroma.Repo, :manual)
2020-03-06 10:23:58 -07:00
2017-04-13 07:49:24 -06:00
{:ok, _} = Application.ensure_all_started(:ex_machina)
# Prepare and later automatically cleanup upload dir
uploads_dir = Pleroma.Config.get([Pleroma.Uploaders.Local, :uploads], "test/uploads")
File.mkdir_p!(uploads_dir)
ExUnit.after_suite(fn _results ->
uploads = Pleroma.Config.get([Pleroma.Uploaders.Local, :uploads], "test/uploads")
File.rm_rf!(uploads)
end)
2024-06-09 11:28:00 -06:00
defmodule Pleroma.Test.StaticConfig do
@moduledoc """
This module provides a Config that is completely static, built at startup time from the environment. It's safe to use in testing as it will not modify any state.
"""
@behaviour Pleroma.Config.Getting
@config Application.get_all_env(:pleroma)
def get(path, default \\ nil) do
get_in(@config, path) || default
end
end