65 lines
1.5 KiB
Elixir
65 lines
1.5 KiB
Elixir
defmodule Mobilizon.ApplicationsFixtures do
|
|
@moduledoc """
|
|
This module defines test helpers for creating
|
|
entities via the `Mobilizon.Applications` context.
|
|
"""
|
|
|
|
import Mobilizon.Factory
|
|
|
|
@doc """
|
|
Generate a application.
|
|
"""
|
|
def application_fixture(attrs \\ %{}) do
|
|
{:ok, application} =
|
|
attrs
|
|
|> Enum.into(%{
|
|
name: "some name",
|
|
client_id: "hello",
|
|
client_secret: "secret",
|
|
redirect_uris: ["somewhere", "else"],
|
|
scope: "read"
|
|
})
|
|
|> Mobilizon.Applications.create_application()
|
|
|
|
application
|
|
end
|
|
|
|
@doc """
|
|
Generate a application_token.
|
|
"""
|
|
def application_token_fixture(attrs \\ %{}) do
|
|
user = insert(:user)
|
|
|
|
{:ok, application_token} =
|
|
attrs
|
|
|> Enum.into(%{
|
|
application_id: application_fixture().id,
|
|
user_id: user.id,
|
|
authorization_code: "some code",
|
|
scope: "read",
|
|
status: :pending
|
|
})
|
|
|> Mobilizon.Applications.create_application_token()
|
|
|
|
application_token
|
|
end
|
|
|
|
@doc """
|
|
Generate a application_device_activation.
|
|
"""
|
|
def application_device_activation_fixture(attrs \\ %{}) do
|
|
{:ok, application_device_activation} =
|
|
attrs
|
|
|> Enum.into(%{
|
|
user_code: "hello",
|
|
device_code: "computers",
|
|
expires_in: 600,
|
|
application_id: application_fixture().id,
|
|
scope: "read"
|
|
})
|
|
|> Mobilizon.Applications.create_application_device_activation()
|
|
|
|
application_device_activation
|
|
end
|
|
end
|