6b7b443ff9
Also consolidate Tesla mocks into the HttpRequestMock module. Tests were not exercising the real codepaths. The Rich Media Preview only works with https, but most of these tests were only mocking http.
23 lines
1.3 KiB
Elixir
23 lines
1.3 KiB
Elixir
# Pleroma: A lightweight social networking server
|
|
# Copyright © 2017-2022 Pleroma Authors <https://pleroma.social/>
|
|
# SPDX-License-Identifier: AGPL-3.0-only
|
|
|
|
defmodule Pleroma.Caching do
|
|
@callback get!(Cachex.cache(), any()) :: any()
|
|
@callback get(Cachex.cache(), any()) :: {atom(), any()}
|
|
@callback put(Cachex.cache(), any(), any(), Keyword.t()) :: {Cachex.status(), boolean()}
|
|
@callback put(Cachex.cache(), any(), any()) :: {Cachex.status(), boolean()}
|
|
@callback fetch!(Cachex.cache(), any(), function() | nil) :: any()
|
|
@callback fetch(Cachex.cache(), any(), function() | nil) ::
|
|
{atom(), any()} | {atom(), any(), any()}
|
|
# @callback del(Cachex.cache(), any(), Keyword.t()) :: {Cachex.status(), boolean()}
|
|
@callback del(Cachex.cache(), any()) :: {Cachex.status(), boolean()}
|
|
@callback stream!(Cachex.cache(), any()) :: Enumerable.t()
|
|
@callback expire_at(Cachex.cache(), binary(), number()) :: {Cachex.status(), boolean()}
|
|
@callback expire(Cachex.cache(), binary(), number()) :: {Cachex.status(), boolean()}
|
|
@callback exists?(Cachex.cache(), any()) :: {Cachex.status(), boolean()}
|
|
@callback execute!(Cachex.cache(), function()) :: any()
|
|
@callback get_and_update(Cachex.cache(), any(), function()) ::
|
|
{:commit | :ignore, any()}
|
|
end
|