2018-12-23 12:11:29 -08:00
|
|
|
# Pleroma: A lightweight social networking server
|
2023-01-02 12:38:50 -08:00
|
|
|
# Copyright © 2017-2022 Pleroma Authors <https://pleroma.social/>
|
2018-12-23 12:11:29 -08:00
|
|
|
# SPDX-License-Identifier: AGPL-3.0-only
|
|
|
|
|
2023-02-09 09:36:02 -08:00
|
|
|
Code.put_compiler_option(:warnings_as_errors, true)
|
|
|
|
|
2024-03-18 23:34:37 -07:00
|
|
|
ExUnit.configure(max_cases: System.schedulers_online() * 2)
|
|
|
|
|
2023-12-12 02:09:22 -08:00
|
|
|
ExUnit.start(exclude: [:federated, :erratic])
|
2019-11-26 12:24:34 -08:00
|
|
|
|
2024-01-15 17:18:43 -08:00
|
|
|
if match?({:unix, :darwin}, :os.type()) do
|
|
|
|
excluded = ExUnit.configuration() |> Keyword.get(:exclude, [])
|
|
|
|
excluded = excluded ++ [:skip_darwin]
|
|
|
|
ExUnit.configure(exclude: excluded)
|
|
|
|
end
|
|
|
|
|
2017-03-17 09:09:58 -07:00
|
|
|
Ecto.Adapters.SQL.Sandbox.mode(Pleroma.Repo, :manual)
|
2020-03-06 09:23:58 -08:00
|
|
|
|
2019-07-09 09:54:13 -07:00
|
|
|
Mox.defmock(Pleroma.ReverseProxy.ClientMock, for: Pleroma.ReverseProxy.Client)
|
2020-03-06 09:23:58 -08:00
|
|
|
Mox.defmock(Pleroma.GunMock, for: Pleroma.Gun)
|
|
|
|
|
2017-04-13 06:49:24 -07:00
|
|
|
{:ok, _} = Application.ensure_all_started(:ex_machina)
|
2019-09-18 13:34:13 -07:00
|
|
|
|
|
|
|
ExUnit.after_suite(fn _results ->
|
|
|
|
uploads = Pleroma.Config.get([Pleroma.Uploaders.Local, :uploads], "test/uploads")
|
|
|
|
File.rm_rf!(uploads)
|
|
|
|
end)
|
2023-12-10 21:43:49 -08:00
|
|
|
|
|
|
|
defmodule Pleroma.Test.StaticConfig do
|
2023-12-10 21:48:34 -08:00
|
|
|
@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.
|
|
|
|
"""
|
|
|
|
|
2023-12-10 21:43:49 -08:00
|
|
|
@behaviour Pleroma.Config.Getting
|
|
|
|
@config Application.get_all_env(:pleroma)
|
|
|
|
|
|
|
|
def get(path, default \\ nil) do
|
|
|
|
get_in(@config, path) || default
|
|
|
|
end
|
|
|
|
end
|