who_need_help/test/who_need_help/public_access_test.exs

23 lines
730 B
Elixir

defmodule WhoNeedHelp.PublicAccessTest do
use ExUnit.Case, async: true
alias WhoNeedHelp.PublicAccess
@salt "public-access-compatibility"
test "worker-safe tokens remain compatible with endpoint-signed tokens" do
endpoint = WhoNeedHelpWeb.Endpoint
payload = Ecto.UUID.generate()
endpoint_token = Phoenix.Token.sign(endpoint, @salt, payload)
worker_safe_token = PublicAccess.sign(@salt, payload)
assert {:ok, ^payload} = PublicAccess.verify(@salt, endpoint_token)
assert {:ok, ^payload} = Phoenix.Token.verify(endpoint, @salt, worker_safe_token)
end
test "public origin matches the configured endpoint origin" do
assert PublicAccess.origin() == WhoNeedHelpWeb.Endpoint.url()
end
end