23 lines
		
	
	
	
		
			789 B
		
	
	
	
		
			Elixir
		
	
	
	
	
	
			
		
		
	
	
			23 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
 |