 9ba60f70d2
			
		
	
	
		9ba60f70d2
		
	
	
	
	
		
			
			In general, tests that match these criteria can be made async: - Doesn't use real Cachex. - Doesn't write to the Config / Application Environment. - Uses Mock. Using Mox is fine. - Uses the streamer.
		
			
				
	
	
		
			33 lines
		
	
	
	
		
			938 B
		
	
	
	
		
			Elixir
		
	
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
	
		
			938 B
		
	
	
	
		
			Elixir
		
	
	
	
	
	
| # Pleroma: A lightweight social networking server
 | |
| # Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/>
 | |
| # SPDX-License-Identifier: AGPL-3.0-only
 | |
| 
 | |
| defmodule Pleroma.Web.Preload.Providers.UserTest do
 | |
|   use Pleroma.DataCase, async: true
 | |
|   import Pleroma.Factory
 | |
|   alias Pleroma.Web.Preload.Providers.User
 | |
| 
 | |
|   describe "returns empty when user doesn't exist" do
 | |
|     test "nil user specified" do
 | |
|       assert User.generate_terms(%{user: nil}) == %{}
 | |
|     end
 | |
| 
 | |
|     test "missing user specified" do
 | |
|       assert User.generate_terms(%{user: :not_a_user}) == %{}
 | |
|     end
 | |
|   end
 | |
| 
 | |
|   describe "specified user exists" do
 | |
|     setup do
 | |
|       user = insert(:user)
 | |
| 
 | |
|       terms = User.generate_terms(%{user: user})
 | |
|       %{terms: terms, user: user}
 | |
|     end
 | |
| 
 | |
|     test "account is rendered", %{terms: terms, user: user} do
 | |
|       account = terms["/api/v1/accounts/#{user.id}"]
 | |
|       assert %{acct: user, username: user} = account
 | |
|     end
 | |
|   end
 | |
| end
 |