Packages
req
0.5.6
0.6.3
0.6.2
0.6.1
0.6.0
0.5.18
0.5.17
0.5.16
0.5.15
0.5.14
0.5.13
0.5.12
0.5.11
0.5.10
0.5.9
0.5.8
0.5.7
0.5.6
0.5.5
0.5.4
0.5.3
0.5.2
0.5.1
0.5.0
0.4.14
0.4.13
0.4.12
0.4.11
0.4.10
0.4.9
0.4.8
0.4.7
0.4.6
0.4.5
0.4.4
0.4.3
0.4.2
0.4.1
0.4.0
0.3.12
0.3.11
0.3.10
0.3.9
0.3.8
0.3.7
0.3.6
0.3.5
0.3.4
0.3.3
0.3.2
0.3.1
0.3.0
0.2.2
0.2.1
0.2.0
0.1.2
0.1.1
0.1.0
Req is a batteries-included HTTP client for Elixir.
Security advisory:
This version has known vulnerabilities.
View advisories
Current section
Files
Jump to
Current section
Files
lib/req/test/ownership_error.ex
# Vendored from nimble_ownership. See Req.Test.Ownership.
defmodule Req.Test.OwnershipError do
@moduledoc false
@type t() :: %__MODULE__{
reason:
{:already_allowed, pid()}
| :not_allowed
| :already_an_owner
| :cant_allow_in_shared_mode
| {:not_shared_owner, pid()},
key: Req.Test.Ownership.key()
}
defexception [:reason, :key]
@impl true
def message(%__MODULE__{key: key, reason: reason}) do
format_reason(key, reason)
end
## Helpers
defp format_reason(key, {:already_allowed, other_owner_pid}) do
"this PID is already allowed to access key #{inspect(key)} via other owner PID #{inspect(other_owner_pid)}"
end
defp format_reason(key, :not_allowed) do
"this PID is not allowed to access key #{inspect(key)}"
end
defp format_reason(key, :already_an_owner) do
"this PID is already an owner of key #{inspect(key)}"
end
defp format_reason(_key, {:not_shared_owner, pid}) do
"#{inspect(pid)} is not the shared owner, so it cannot update keys"
end
defp format_reason(_key, :cant_allow_in_shared_mode) do
"cannot allow PIDs in shared mode"
end
end