24 lines
789 B
Elixir
24 lines
789 B
Elixir
|
# Pleroma: A lightweight social networking server
|
||
|
# Copyright © 2017-2018 Pleroma Authors <https://pleroma.social/>
|
||
|
# SPDX-License-Identifier: AGPL-3.0-only
|
||
|
|
||
|
defmodule Pleroma.Web.MastodonAPI.PushSubscriptionViewTest do
|
||
|
use Pleroma.DataCase
|
||
|
import Pleroma.Factory
|
||
|
alias Pleroma.Web.MastodonAPI.PushSubscriptionView, as: View
|
||
|
alias Pleroma.Web.Push
|
||
|
|
||
|
test "Represent a subscription" do
|
||
|
subscription = insert(:push_subscription, data: %{"alerts" => %{"mention" => true}})
|
||
|
|
||
|
expected = %{
|
||
|
alerts: %{"mention" => true},
|
||
|
endpoint: subscription.endpoint,
|
||
|
id: to_string(subscription.id),
|
||
|
server_key: Keyword.get(Push.vapid_config(), :public_key)
|
||
|
}
|
||
|
|
||
|
assert expected == View.render("push_subscription.json", %{subscription: subscription})
|
||
|
end
|
||
|
end
|