mirror of
https://github.com/bonfire-networks/bonfire-app.git
synced 2024-05-16 08:02:40 +00:00
time to light up some bonfires
This commit is contained in:
parent
6490333b44
commit
ea735f556e
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -25,7 +25,7 @@ erl_crash.dump
|
|||
*.ez
|
||||
|
||||
# Ignore package tarball (built via "mix hex.build").
|
||||
vox_publica-*.tar
|
||||
bonfire-*.tar
|
||||
|
||||
# If NPM crashes, it generates a log, let's ignore it too.
|
||||
npm-debug.log
|
||||
|
|
13
README.md
13
README.md
|
@ -1,6 +1,11 @@
|
|||
# VoxPublica
|
||||
## Bonfire:Social
|
||||
|
||||
An app for [Bonfire](https://bonfire.cafe/) that bundles the following extensions:
|
||||
|
||||
- (Bonfire:Web:Phoenix)[https://github.com/commonspub/bonfire_web_phoenix] - scaffolding for Web UI powered by (Phoenix)[https://www.phoenixframework.org/] LiveView
|
||||
- (Bonfire:Me)[https://github.com/commonspub/bonfire_me] - user profiles
|
||||
- More to come...
|
||||
|
||||
Blogging/Microblogging software.
|
||||
|
||||
## Handy commands
|
||||
|
||||
|
@ -12,9 +17,7 @@ If using Docker, just replace `mix ` with `make mix-` in the above commands, so
|
|||
|
||||
## Copyright and License
|
||||
|
||||
VoxPublica content publishing platform
|
||||
|
||||
Copyright (c) 2020 VoxPublica Contributors
|
||||
Copyright (c) 2020 Bonfire, VoxPublica, and CommonsPub Contributors
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
|
|
|
@ -1,22 +1,22 @@
|
|||
use Mix.Config
|
||||
|
||||
config :cpub_me, :web_module, CommonsPub.WebPhoenix
|
||||
config :cpub_me, :repo_module, VoxPublica.Repo
|
||||
config :cpub_me, :mailer_module, VoxPublica.Mailer
|
||||
config :cpub_me, :helper_module, CommonsPub.WebPhoenixHelpers
|
||||
config :cpub_me, :templates_path, "lib"
|
||||
config :bonfire_me, :web_module, Bonfire.WebPhoenix
|
||||
config :bonfire_me, :repo_module, Bonfire.Repo
|
||||
config :bonfire_me, :mailer_module, Bonfire.Mailer
|
||||
config :bonfire_me, :helper_module, Bonfire.WebPhoenixHelpers
|
||||
config :bonfire_me, :templates_path, "lib"
|
||||
|
||||
alias CommonsPub.Me.Accounts
|
||||
alias Bonfire.Me.Accounts
|
||||
|
||||
config :cpub_me, Accounts.Emails,
|
||||
confirm_email: [subject: "Confirm your email - VoxPublica"],
|
||||
reset_password: [subject: "Reset your password - VoxPublica"]
|
||||
config :bonfire_me, Accounts.Emails,
|
||||
confirm_email: [subject: "Confirm your email - Bonfire"],
|
||||
reset_password: [subject: "Reset your password - Bonfire"]
|
||||
|
||||
#### Forms configuration
|
||||
|
||||
# You probably will want to leave these
|
||||
|
||||
alias CommonsPub.Me.Accounts.{
|
||||
alias Bonfire.Me.Accounts.{
|
||||
ChangePasswordFields,
|
||||
ConfirmEmailFields,
|
||||
LoginFields,
|
||||
|
@ -26,38 +26,38 @@ alias CommonsPub.Me.Accounts.{
|
|||
|
||||
# these are not used yet, but they will be
|
||||
|
||||
config :cpub_me, ChangePasswordFields,
|
||||
config :bonfire_me, ChangePasswordFields,
|
||||
cast: [:old_password, :password, :password_confirmation],
|
||||
required: [:old_password, :password, :password_confirmation],
|
||||
confirm: :password,
|
||||
new_password: [length: [min: 10, max: 64]]
|
||||
|
||||
config :cpub_me, ConfirmEmailFields,
|
||||
config :bonfire_me, ConfirmEmailFields,
|
||||
cast: [:email],
|
||||
required: [:email],
|
||||
email: [format: ~r(^[^@]{1,128}@[^@\.]+\.[^@]{2,128}$)]
|
||||
|
||||
config :cpub_me, LoginFields,
|
||||
config :bonfire_me, LoginFields,
|
||||
cast: [:email, :password],
|
||||
required: [:email, :password],
|
||||
email: [format: ~r(^[^@]{1,128}@[^@\.]+\.[^@]{2,128}$)],
|
||||
password: [length: [min: 10, max: 64]]
|
||||
|
||||
config :cpub_me, ResetPasswordFields,
|
||||
config :bonfire_me, ResetPasswordFields,
|
||||
cast: [:password, :password_confirmation],
|
||||
required: [:password, :password_confirmation],
|
||||
confirm: :password,
|
||||
password: [length: [min: 10, max: 64]]
|
||||
|
||||
config :cpub_me, SignupFields,
|
||||
config :bonfire_me, SignupFields,
|
||||
cast: [:email, :password],
|
||||
required: [:email, :password],
|
||||
email: [format: ~r(^[^@]{1,128}@[^@\.]+\.[^@]{2,128}$)],
|
||||
password: [length: [min: 10, max: 64]]
|
||||
|
||||
alias CommonsPub.Me.Users.ValidFields
|
||||
alias Bonfire.Me.Users.ValidFields
|
||||
|
||||
config :cpub_me, ValidFields,
|
||||
config :bonfire_me, ValidFields,
|
||||
username: [format: ~r(^[a-z][a-z0-9_]{2,30}$)i],
|
||||
name: [length: [min: 3, max: 50]],
|
||||
summary: [length: [min: 20, max: 500]]
|
21
config/bonfire_web_phoenix.exs
Normal file
21
config/bonfire_web_phoenix.exs
Normal file
|
@ -0,0 +1,21 @@
|
|||
use Mix.Config
|
||||
|
||||
signing_salt = System.get_env("SIGNING_SALT", "CqAoopA2")
|
||||
encryption_salt = System.get_env("ENCRYPTION_SALT", "g7K25as98msad0qlSxhNDwnnzTqklK10")
|
||||
secret_key_base = System.get_env("SECRET_KEY_BASE", "g7K250qlSxhNDt5qnV6f4HFnyoD7fGUuZ8tbBF69aJCOvUIF8P0U7wnnzTqklK10")
|
||||
|
||||
config :bonfire_web_phoenix, :signing_salt, signing_salt
|
||||
config :bonfire_web_phoenix, :encryption_salt, encryption_salt
|
||||
config :bonfire_web_phoenix, :routes_module, Bonfire.Web.Routes
|
||||
config :bonfire_web_phoenix, :routes_helper_module, Bonfire.Web.Routes.Helpers
|
||||
config :bonfire_web_phoenix, :live_view_module, Bonfire.Web.PageLive
|
||||
config :bonfire_web_phoenix, :otp_app, :bonfire
|
||||
|
||||
config :bonfire_web_phoenix, Bonfire.WebPhoenix.Endpoint,
|
||||
url: [host: "localhost"],
|
||||
secret_key_base: secret_key_base,
|
||||
render_errors: [view: Bonfire.WebPhoenix.ErrorView, accepts: ~w(html json), layout: false],
|
||||
pubsub_server: Bonfire.PubSub,
|
||||
live_view: [signing_salt: signing_salt]
|
||||
|
||||
config :phoenix, :json_library, Jason
|
|
@ -4,33 +4,38 @@ use Mix.Config
|
|||
|
||||
# You will almost certainly want to change at least some of these
|
||||
|
||||
alias VoxPublica.Mailer
|
||||
alias Bonfire.Mailer
|
||||
|
||||
config :vox_publica, Mailer,
|
||||
config :bonfire, Mailer,
|
||||
from_address: "noreply@voxpub.local"
|
||||
|
||||
import_config "cpub_web_phoenix.exs"
|
||||
|
||||
# include DB schemas
|
||||
import_config "cpub_schemas.exs"
|
||||
import_config "cpub_extensions.exs"
|
||||
|
||||
# include Phoenix web server boilerplate
|
||||
import_config "bonfire_web_phoenix.exs"
|
||||
|
||||
# include all used Bonfire extensions
|
||||
import_config "bonfire_me.exs"
|
||||
|
||||
|
||||
#### Basic configuration
|
||||
|
||||
# You probably won't want to touch these. You might override some in
|
||||
# other config files.
|
||||
|
||||
config :vox_publica,
|
||||
ecto_repos: [VoxPublica.Repo]
|
||||
config :bonfire,
|
||||
ecto_repos: [Bonfire.Repo]
|
||||
|
||||
config :logger, :console,
|
||||
format: "$time $metadata[$level] $message\n",
|
||||
metadata: [:request_id]
|
||||
|
||||
config :activity_pub, :adapter, VoxPublica.ActivityPub.Adapter
|
||||
config :activity_pub, :repo, VoxPublica.Repo
|
||||
config :activity_pub, :adapter, Bonfire.ActivityPub.Adapter
|
||||
config :activity_pub, :repo, Bonfire.Repo
|
||||
|
||||
config :vox_publica, Oban,
|
||||
repo: VoxPublica.Repo,
|
||||
config :bonfire, Oban,
|
||||
repo: Bonfire.Repo,
|
||||
plugins: [Oban.Plugins.Pruner],
|
||||
queues: [federator_incoming: 50, federator_outgoing: 50]
|
||||
|
||||
|
|
|
@ -24,7 +24,7 @@ config :pointers,
|
|||
:cpub_profiles,
|
||||
:cpub_threads,
|
||||
:cpub_users,
|
||||
:vox_publica,
|
||||
:bonfire,
|
||||
]
|
||||
|
||||
#### Flexto Stitching
|
||||
|
|
|
@ -1,21 +0,0 @@
|
|||
use Mix.Config
|
||||
|
||||
signing_salt = System.get_env("SIGNING_SALT", "CqAoopA2")
|
||||
encryption_salt = System.get_env("ENCRYPTION_SALT", "g7K25as98msad0qlSxhNDwnnzTqklK10")
|
||||
secret_key_base = System.get_env("SECRET_KEY_BASE", "g7K250qlSxhNDt5qnV6f4HFnyoD7fGUuZ8tbBF69aJCOvUIF8P0U7wnnzTqklK10")
|
||||
|
||||
config :cpub_web_phoenix, :signing_salt, signing_salt
|
||||
config :cpub_web_phoenix, :encryption_salt, encryption_salt
|
||||
config :cpub_web_phoenix, :routes_module, VoxPublica.Web.Routes
|
||||
config :cpub_web_phoenix, :routes_helper_module, VoxPublica.Web.Routes.Helpers
|
||||
config :cpub_web_phoenix, :live_view_module, VoxPublica.Web.PageLive
|
||||
config :cpub_web_phoenix, :otp_app, :vox_publica
|
||||
|
||||
config :cpub_web_phoenix, CommonsPub.WebPhoenix.Endpoint,
|
||||
url: [host: "localhost"],
|
||||
secret_key_base: secret_key_base,
|
||||
render_errors: [view: CommonsPub.WebPhoenix.ErrorView, accepts: ~w(html json), layout: false],
|
||||
pubsub_server: VoxPublica.PubSub,
|
||||
live_view: [signing_salt: signing_salt]
|
||||
|
||||
config :phoenix, :json_library, Jason
|
|
@ -1,15 +1,15 @@
|
|||
use Mix.Config
|
||||
|
||||
alias VoxPublica.{Mailer, Repo, Web.Endpoint}
|
||||
alias Bonfire.{Mailer, Repo, Web.Endpoint}
|
||||
|
||||
config :vox_publica, Mailer,
|
||||
config :bonfire, Mailer,
|
||||
adapter: Bamboo.LocalAdapter
|
||||
|
||||
# Configure your database
|
||||
config :vox_publica, VoxPublica.Repo,
|
||||
config :bonfire, Bonfire.Repo,
|
||||
username: "postgres",
|
||||
password: "postgres",
|
||||
database: "vox_publica_dev",
|
||||
database: "bonfire_dev",
|
||||
hostname: System.get_env("DATABASE_HOST") || "localhost",
|
||||
show_sensitive_data_on_connection_error: true,
|
||||
pool_size: 10
|
||||
|
@ -20,7 +20,7 @@ config :vox_publica, VoxPublica.Repo,
|
|||
# The watchers configuration can be used to run external
|
||||
# watchers to your application. For example, we use it
|
||||
# with webpack to recompile .js and .css sources.
|
||||
config :cpub_web_phoenix, CommonsPub.WebPhoenix.Endpoint,
|
||||
config :bonfire_web_phoenix, Bonfire.WebPhoenix.Endpoint,
|
||||
http: [port: 4000],
|
||||
debug_errors: true,
|
||||
code_reloader: true,
|
||||
|
@ -60,13 +60,13 @@ config :cpub_web_phoenix, CommonsPub.WebPhoenix.Endpoint,
|
|||
# different ports.
|
||||
|
||||
# Watch static and templates for browser reloading.
|
||||
config :cpub_web_phoenix, CommonsPub.WebPhoenix.Endpoint,
|
||||
config :bonfire_web_phoenix, Bonfire.WebPhoenix.Endpoint,
|
||||
live_reload: [
|
||||
patterns: [
|
||||
~r"priv/static/.*(js|css|png|jpeg|jpg|gif|svg)$",
|
||||
~r"priv/gettext/.*(po)$",
|
||||
~r"lib/vox_publica_web/(live|views)/.*(ex)$",
|
||||
~r"lib/vox_publica_web/templates/.*(eex)$"
|
||||
~r"lib/web/(live|views)/.*(ex)$",
|
||||
~r"lib/web/templates/.*(eex)$"
|
||||
]
|
||||
]
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@ use Mix.Config
|
|||
# manifest is generated by the `mix phx.digest` task,
|
||||
# which you should run after static files are built and
|
||||
# before starting your production server.
|
||||
config :cpub_web_phoenix, CommonsPub.WebPhoenix.Endpoint,
|
||||
config :bonfire_web_phoenix, Bonfire.WebPhoenix.Endpoint,
|
||||
url: [host: "example.com", port: 80],
|
||||
cache_static_manifest: "priv/static/cache_manifest.json"
|
||||
|
||||
|
@ -21,7 +21,7 @@ config :logger, level: :info
|
|||
# To get SSL working, you will need to add the `https` key
|
||||
# to the previous section and set your `:url` port to 443:
|
||||
#
|
||||
# config :vox_publica, CommonsPub.WebPhoenix.Endpoint,
|
||||
# config :bonfire, Bonfire.WebPhoenix.Endpoint,
|
||||
# ...
|
||||
# url: [host: "example.com", port: 443],
|
||||
# https: [
|
||||
|
@ -45,7 +45,7 @@ config :logger, level: :info
|
|||
# We also recommend setting `force_ssl` in your endpoint, ensuring
|
||||
# no data is ever sent via http, always redirecting to https:
|
||||
#
|
||||
# config :vox_publica, CommonsPub.WebPhoenix.Endpoint,
|
||||
# config :bonfire, Bonfire.WebPhoenix.Endpoint,
|
||||
# force_ssl: [hsts: true]
|
||||
#
|
||||
# Check `Plug.SSL` for all available options in `force_ssl`.
|
||||
|
|
|
@ -11,7 +11,7 @@ database_url =
|
|||
For example: ecto://USER:PASS@HOST/DATABASE
|
||||
"""
|
||||
|
||||
config :vox_publica, VoxPublica.Repo,
|
||||
config :bonfire, Bonfire.Repo,
|
||||
# ssl: true,
|
||||
url: database_url,
|
||||
pool_size: String.to_integer(System.get_env("POOL_SIZE") || "10")
|
||||
|
@ -23,7 +23,7 @@ secret_key_base =
|
|||
You can generate one by calling: mix phx.gen.secret
|
||||
"""
|
||||
|
||||
config :cpub_web_phoenix, CommonsPub.WebPhoenix.Endpoint,
|
||||
config :bonfire_web_phoenix, Bonfire.WebPhoenix.Endpoint,
|
||||
http: [
|
||||
port: String.to_integer(System.get_env("PORT") || "4000"),
|
||||
transport_options: [socket_opts: [:inet6]]
|
||||
|
@ -35,7 +35,7 @@ config :cpub_web_phoenix, CommonsPub.WebPhoenix.Endpoint,
|
|||
# If you are doing OTP releases, you need to instruct Phoenix
|
||||
# to start each relevant endpoint:
|
||||
#
|
||||
# config :vox_publica, CommonsPub.WebPhoenix.Endpoint, server: true
|
||||
# config :bonfire, Bonfire.WebPhoenix.Endpoint, server: true
|
||||
#
|
||||
# Then you can assemble a release by calling `mix release`.
|
||||
# See `mix help release` for more information.
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
use Mix.Config
|
||||
|
||||
alias VoxPublica.{Mailer, Repo}
|
||||
alias Bonfire.{Mailer, Repo}
|
||||
|
||||
config :vox_publica, Mailer,
|
||||
config :bonfire, Mailer,
|
||||
adapter: Bamboo.TestAdapter
|
||||
|
||||
config :logger, level: :warn
|
||||
|
@ -12,16 +12,16 @@ config :logger, level: :warn
|
|||
# The MIX_TEST_PARTITION environment variable can be used
|
||||
# to provide built-in test partitioning in CI environment.
|
||||
# Run `mix help test` for more information.
|
||||
config :vox_publica, Repo,
|
||||
config :bonfire, Repo,
|
||||
username: "postgres",
|
||||
password: "postgres",
|
||||
database: "vox_publica_test#{System.get_env("MIX_TEST_PARTITION")}",
|
||||
database: "bonfire_test#{System.get_env("MIX_TEST_PARTITION")}",
|
||||
hostname: System.get_env("DATABASE_HOST") || "localhost",
|
||||
pool: Ecto.Adapters.SQL.Sandbox
|
||||
|
||||
# We don't run a server during test. If one is required,
|
||||
# you can enable the server option below.
|
||||
config :cpub_web_phoenix, CommonsPub.WebPhoenix.Endpoint,
|
||||
config :bonfire_web_phoenix, Bonfire.WebPhoenix.Endpoint,
|
||||
http: [port: 4002],
|
||||
server: false
|
||||
|
||||
|
|
4
deps.git
4
deps.git
|
@ -1,8 +1,8 @@
|
|||
cpub_web_phoenix = "https://github.com/commonspub/cpub_web_phoenix#main"
|
||||
# bonfire_web_phoenix = "https://github.com/commonspub/bonfire_web_phoenix#main"
|
||||
pointers = "https://github.com/commonspub/pointers#main"
|
||||
activity_pub = "https://gitlab.com/CommonsPub/activitypub.git#develop"
|
||||
cpub_actors = "https://github.com/commonspub/cpub_actors#main"
|
||||
cpub_me = "https://github.com/commonspub/cpub_me#main"
|
||||
# bonfire_me = "https://github.com/commonspub/bonfire_me#main"
|
||||
cpub_local_auth = "https://github.com/commonspub/cpub_local_auth#main"
|
||||
cpub_accounts = "https://github.com/commonspub/cpub_accounts#main"
|
||||
cpub_emails = "https://github.com/commonspub/cpub_emails#main"
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
defmodule VoxPublica.ActivityPub.Adapter do
|
||||
defmodule Bonfire.ActivityPub.Adapter do
|
||||
@behaviour ActivityPub.Adapter
|
||||
|
||||
alias ActivityPub.Actor
|
||||
alias CommonsPub.Me.Users
|
||||
alias Bonfire.Me.Users
|
||||
|
||||
defp format_actor(user) do
|
||||
ap_base_path = System.get_env("AP_BASE_PATH", "/pub")
|
||||
id = CommonsPub.WebPhoenix.Endpoint.url() <> ap_base_path <> "/actors/#{user.character.username}"
|
||||
id = Bonfire.WebPhoenix.Endpoint.url() <> ap_base_path <> "/actors/#{user.character.username}"
|
||||
|
||||
data = %{
|
||||
"type" => "Person",
|
||||
|
|
|
@ -1,18 +1,18 @@
|
|||
defmodule VoxPublica.Application do
|
||||
defmodule Bonfire.Application do
|
||||
@moduledoc false
|
||||
|
||||
@sup_name VoxPublica.Supervisor
|
||||
@sup_name Bonfire.Supervisor
|
||||
|
||||
use Application
|
||||
|
||||
def start(_type, _args) do
|
||||
[
|
||||
Pointers.Tables,
|
||||
CommonsPub.WebPhoenix.Telemetry,
|
||||
VoxPublica.Repo,
|
||||
{Phoenix.PubSub, name: VoxPublica.PubSub},
|
||||
CommonsPub.WebPhoenix.Endpoint,
|
||||
{Oban, Application.get_env(:vox_publica, Oban)}
|
||||
Bonfire.WebPhoenix.Telemetry,
|
||||
Bonfire.Repo,
|
||||
{Phoenix.PubSub, name: Bonfire.PubSub},
|
||||
Bonfire.WebPhoenix.Endpoint,
|
||||
{Oban, Application.get_env(:bonfire, Oban)}
|
||||
]
|
||||
|> Supervisor.start_link(strategy: :one_for_one, name: @sup_name)
|
||||
end
|
||||
|
@ -20,7 +20,7 @@ defmodule VoxPublica.Application do
|
|||
# Tell Phoenix to update the endpoint configuration
|
||||
# whenever the application is updated.
|
||||
def config_change(changed, _new, removed) do
|
||||
CommonsPub.WebPhoenix.Endpoint.config_change(changed, removed)
|
||||
Bonfire.WebPhoenix.Endpoint.config_change(changed, removed)
|
||||
:ok
|
||||
end
|
||||
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
defmodule VoxPublica.Mailer do
|
||||
use Bamboo.Mailer, otp_app: :vox_publica
|
||||
defmodule Bonfire.Mailer do
|
||||
use Bamboo.Mailer, otp_app: :bonfire
|
||||
alias Bamboo.Email
|
||||
require Logger
|
||||
|
||||
def send_now(email, to) do
|
||||
from =
|
||||
Application.get_env(:vox_publica, __MODULE__, [])
|
||||
Application.get_env(:bonfire, __MODULE__, [])
|
||||
|> Keyword.get(:from_address, "noreply@voxpub.local")
|
||||
try do
|
||||
mail =
|
||||
|
@ -18,14 +18,14 @@ defmodule VoxPublica.Mailer do
|
|||
error in Bamboo.SMTPAdapter.SMTPError ->
|
||||
# le sigh, i give up
|
||||
Logger.error("Email delivery error: #{inspect(error.raw)}")
|
||||
{:error, error}
|
||||
{:error, error}
|
||||
# case error.raw do
|
||||
# {:no_credentials, _} -> {:error, :config}
|
||||
# {:retries_exceeded, _} -> {:error, :rejected}
|
||||
# # give up
|
||||
# _ -> raise error
|
||||
# end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
defmodule VoxPublica.Repo do
|
||||
defmodule Bonfire.Repo do
|
||||
use Ecto.Repo,
|
||||
otp_app: :vox_publica,
|
||||
otp_app: :bonfire,
|
||||
adapter: Ecto.Adapters.Postgres
|
||||
|
||||
alias Pointers.Changesets
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
// Auth Flow mixins and styles
|
||||
@import "../../deps/cpub_me/lib/web/mixins";
|
||||
@import "../../deps/bonfire_me/lib/web/mixins";
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
defmodule VoxPublica.Web.HeaderLive do
|
||||
use CommonsPub.WebPhoenix, :live_component
|
||||
defmodule Bonfire.Web.HeaderLive do
|
||||
use Bonfire.WebPhoenix, :live_component
|
||||
|
||||
def update(assigns, socket) do
|
||||
{
|
||||
|
|
|
@ -4,13 +4,13 @@
|
|||
aria-label="Main navigation">
|
||||
<div class="header__left">
|
||||
<%= live_redirect to: "/" do %>
|
||||
<h3>VoxPublica</h3>
|
||||
<h3>Bonfire</h3>
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="header__right">
|
||||
<%= if Kernel.function_exported?(CommonsPub.Me.Web.HeaderMeLive, :render, 1), do: live_component(
|
||||
<%= if Kernel.function_exported?(Bonfire.Me.Web.HeaderMeLive, :render, 1), do: live_component(
|
||||
@socket,
|
||||
CommonsPub.Me.Web.HeaderMeLive,
|
||||
Bonfire.Me.Web.HeaderMeLive,
|
||||
current_user: @current_user
|
||||
) %>
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
defmodule VoxPublica.Web.HomeLive do
|
||||
use CommonsPub.WebPhoenix, :live_view
|
||||
defmodule Bonfire.Web.HomeLive do
|
||||
use Bonfire.WebPhoenix, :live_view
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
defmodule VoxPublica.Web.PageLive do
|
||||
use CommonsPub.WebPhoenix, :live_component
|
||||
defmodule Bonfire.Web.PageLive do
|
||||
use Bonfire.WebPhoenix, :live_component
|
||||
|
||||
end
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<div id="template" class="page__container">
|
||||
<%= live_component(
|
||||
@socket,
|
||||
VoxPublica.Web.HeaderLive,
|
||||
Bonfire.Web.HeaderLive,
|
||||
id: :my_header,
|
||||
current_user: @current_user
|
||||
) %>
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
defmodule VoxPublica.Web.Routes do
|
||||
use CommonsPub.WebPhoenix, :router
|
||||
defmodule Bonfire.Web.Routes do
|
||||
use Bonfire.WebPhoenix, :router
|
||||
|
||||
alias VoxPublica.Web.Routes.Helpers, as: Routes
|
||||
alias Bonfire.Web.Routes.Helpers, as: Routes
|
||||
|
||||
scope "/", VoxPublica.Web do
|
||||
scope "/", Bonfire.Web do
|
||||
# guest visible pages
|
||||
live "/", HomeLive, :home
|
||||
|
||||
|
@ -17,6 +17,6 @@ defmodule VoxPublica.Web.Routes do
|
|||
use ActivityPubWeb.Router
|
||||
|
||||
# include routes from CommonsPub extensions
|
||||
use CommonsPub.Me.Web.Router
|
||||
use Bonfire.Me.Web.Router
|
||||
|
||||
end
|
||||
|
|
6
mix.exs
6
mix.exs
|
@ -1,11 +1,11 @@
|
|||
Code.eval_file("mess.exs")
|
||||
defmodule VoxPublica.MixProject do
|
||||
defmodule Bonfire.MixProject do
|
||||
|
||||
use Mix.Project
|
||||
|
||||
def project do
|
||||
[
|
||||
app: :vox_publica,
|
||||
app: :bonfire,
|
||||
version: "0.1.0",
|
||||
elixir: "~> 1.10",
|
||||
elixirc_paths: elixirc_paths(Mix.env()),
|
||||
|
@ -21,7 +21,7 @@ defmodule VoxPublica.MixProject do
|
|||
|
||||
def application do
|
||||
[
|
||||
mod: {VoxPublica.Application, []},
|
||||
mod: {Bonfire.Application, []},
|
||||
extra_applications: [:logger, :runtime_tools, :ssl, :bamboo, :bamboo_smtp]
|
||||
]
|
||||
end
|
||||
|
|
4
mix.lock
4
mix.lock
|
@ -3,6 +3,8 @@
|
|||
"argon2_elixir": {:hex, :argon2_elixir, "2.3.0", "e251bdafd69308e8c1263e111600e6d68bd44f23d2cccbe43fcb1a417a76bc8e", [:make, :mix], [{:comeonin, "~> 5.3", [hex: :comeonin, repo: "hexpm", optional: false]}, {:elixir_make, "~> 0.6", [hex: :elixir_make, repo: "hexpm", optional: false]}], "hexpm", "28ccb63bff213aecec1f7f3dde9648418b031f822499973281d8f494b9d5a3b3"},
|
||||
"bamboo": {:hex, :bamboo, "1.6.0", "adfb583bef028923aae6f22deaea6667290561da1246058556ecaeb0fec5a175", [:mix], [{:hackney, ">= 1.13.0", [hex: :hackney, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:plug, "~> 1.0", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "454e67feacbc9b6e00553ce1d2fba003c861e0035600d59b09d6159985b17f9b"},
|
||||
"bamboo_smtp": {:hex, :bamboo_smtp, "3.0.0", "b7f0c371af96a1cb7131908918b02abb228f9db234910bf10cf4fb177c083259", [:mix], [{:bamboo, "~> 1.2", [hex: :bamboo, repo: "hexpm", optional: false]}, {:gen_smtp, "~> 0.15.0", [hex: :gen_smtp, repo: "hexpm", optional: false]}], "hexpm", "77cb1fa3076b24109e54df622161fe1e5619376b4ecf86d8b99b46f327acc49f"},
|
||||
"bonfire_me": {:git, "https://github.com/commonspub/bonfire_me", "21c9f4bcd181fde449912e03b59eb6078fa8b65d", [branch: "main"]},
|
||||
"bonfire_web_phoenix": {:git, "https://github.com/commonspub/bonfire_web_phoenix", "a2c2a332982c9c893a642968bd82278d4375af1a", [branch: "main"]},
|
||||
"cachex": {:hex, :cachex, "3.3.0", "6f2ebb8f27491fe39121bd207c78badc499214d76c695658b19d6079beeca5c2", [:mix], [{:eternal, "~> 1.2", [hex: :eternal, repo: "hexpm", optional: false]}, {:jumper, "~> 1.0", [hex: :jumper, repo: "hexpm", optional: false]}, {:sleeplocks, "~> 1.1", [hex: :sleeplocks, repo: "hexpm", optional: false]}, {:unsafe, "~> 1.0", [hex: :unsafe, repo: "hexpm", optional: false]}], "hexpm", "d90e5ee1dde14cef33f6b187af4335b88748b72b30c038969176cd4e6ccc31a1"},
|
||||
"certifi": {:hex, :certifi, "2.5.2", "b7cfeae9d2ed395695dd8201c57a2d019c0c43ecaf8b8bcb9320b40d6662f340", [:rebar3], [{:parse_trans, "~>3.3", [hex: :parse_trans, repo: "hexpm", optional: false]}], "hexpm", "3b3b5f36493004ac3455966991eaf6e768ce9884693d9968055aeeeb1e575040"},
|
||||
"combine": {:hex, :combine, "0.10.0", "eff8224eeb56498a2af13011d142c5e7997a80c8f5b97c499f84c841032e429f", [:mix], [], "hexpm", "1b1dbc1790073076580d0d1d64e42eae2366583e7aecd455d1215b0d16f2451b"},
|
||||
|
@ -18,10 +20,8 @@
|
|||
"cpub_core": {:git, "https://github.com/commonspub/cpub_core", "a2c2a332982c9c893a642968bd82278d4375af1a", [branch: "main"]},
|
||||
"cpub_emails": {:git, "https://github.com/commonspub/cpub_emails", "9ce5af3da39c8d8488d3de5fbb760e4c7706578c", [branch: "main"]},
|
||||
"cpub_local_auth": {:git, "https://github.com/commonspub/cpub_local_auth", "f3e4393659718044cc985b9958684cc791844d66", [branch: "main"]},
|
||||
"cpub_me": {:git, "https://github.com/commonspub/cpub_me", "21c9f4bcd181fde449912e03b59eb6078fa8b65d", [branch: "main"]},
|
||||
"cpub_profiles": {:git, "https://github.com/commonspub/cpub_profiles", "c0f8d35eb1a6417ed7a4a772f039655d4886d0b2", [branch: "main"]},
|
||||
"cpub_users": {:git, "https://github.com/commonspub/cpub_users", "94c56849af715c314860d52a08e191f5b274045a", [branch: "main"]},
|
||||
"cpub_web_phoenix": {:git, "https://github.com/commonspub/cpub_web_phoenix", "a2c2a332982c9c893a642968bd82278d4375af1a", [branch: "main"]},
|
||||
"db_connection": {:hex, :db_connection, "2.3.0", "d56ef906956a37959bcb385704fc04035f4f43c0f560dd23e00740daf8028c49", [:mix], [{:connection, "~> 1.0.2", [hex: :connection, repo: "hexpm", optional: false]}], "hexpm", "dcc082b8f723de9a630451b49fdbd7a59b065c4b38176fb147aaf773574d4520"},
|
||||
"dbg": {:hex, :dbg, "1.0.1", "9c29813e5df8b4d275325416523d511e315656b8ac27a60519791f9cf476d83d", [:mix], [], "hexpm", "866159f496a1ad9b959501f16db3d1338bb6cef029a75a67ca5615d25b38345f"},
|
||||
"decimal": {:hex, :decimal, "2.0.0", "a78296e617b0f5dd4c6caf57c714431347912ffb1d0842e998e9792b5642d697", [:mix], [], "hexpm", "34666e9c55dea81013e77d9d87370fe6cb6291d1ef32f46a1600230b1d44f577"},
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
defmodule VoxPublica.Repo.Migrations.InitPointers do
|
||||
defmodule Bonfire.Repo.Migrations.InitPointers do
|
||||
use Ecto.Migration
|
||||
import Pointers.Migration
|
||||
import Pointers.ULID.Migration
|
||||
|
||||
|
||||
def up(), do: init(:up)
|
||||
def down(), do: init(:down)
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
defmodule VoxPublica.Repo.Migrations.CreateApTables do
|
||||
defmodule Bonfire.Repo.Migrations.CreateApTables do
|
||||
use Ecto.Migration
|
||||
|
||||
def up do
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
defmodule VoxPublica.Repo.Migrations.CreateObanTables do
|
||||
defmodule Bonfire.Repo.Migrations.CreateObanTables do
|
||||
use Ecto.Migration
|
||||
|
||||
def up do
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
defmodule VoxPublica.Repo.Migrations.ImportMe do
|
||||
defmodule Bonfire.Repo.Migrations.ImportMe do
|
||||
use Ecto.Migration
|
||||
|
||||
def change do
|
||||
# accounts & users
|
||||
CommonsPub.Me.Migrations.change()
|
||||
Bonfire.Me.Migrations.change()
|
||||
|
||||
# migrate_circle()
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
# Inside the script, you can read and write to any of your
|
||||
# repositories directly:
|
||||
#
|
||||
# VoxPublica.Repo.insert!(%VoxPublica.SomeSchema{})
|
||||
# Bonfire.Repo.insert!(%Bonfire.SomeSchema{})
|
||||
#
|
||||
# We recommend using the bang functions (`insert!`, `update!`
|
||||
# and so on) as they will fail if something goes wrong.
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
defmodule CommonsPub.Me.AccountsTest do
|
||||
defmodule Bonfire.Me.AccountsTest do
|
||||
|
||||
use VoxPublica.DataCase, async: true
|
||||
alias CommonsPub.Me.Accounts
|
||||
alias VoxPublica.Fake
|
||||
use Bonfire.DataCase, async: true
|
||||
alias Bonfire.Me.Accounts
|
||||
alias Bonfire.Fake
|
||||
|
||||
describe "[registration]" do
|
||||
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
defmodule VoxPublica.ActivityPub.AdapterTest do
|
||||
use VoxPublica.DataCase
|
||||
alias CommonsPub.Me.Accounts
|
||||
alias VoxPublica.ActivityPub.Adapter
|
||||
alias CommonsPub.Me.Users
|
||||
alias VoxPublica.Fake
|
||||
defmodule Bonfire.ActivityPub.AdapterTest do
|
||||
use Bonfire.DataCase
|
||||
alias Bonfire.Me.Accounts
|
||||
alias Bonfire.ActivityPub.Adapter
|
||||
alias Bonfire.Me.Users
|
||||
alias Bonfire.Fake
|
||||
|
||||
describe "actor fetching" do
|
||||
test "by username" do
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
defmodule VoxPublica.ActivityPub.IntegrationTest do
|
||||
use VoxPublica.ConnCase
|
||||
defmodule Bonfire.ActivityPub.IntegrationTest do
|
||||
use Bonfire.ConnCase
|
||||
|
||||
alias CommonsPub.Me.Accounts
|
||||
alias CommonsPub.Me.Users
|
||||
alias VoxPublica.Fake
|
||||
alias Bonfire.Me.Accounts
|
||||
alias Bonfire.Me.Users
|
||||
alias Bonfire.Fake
|
||||
|
||||
test "fetch users from AP API" do
|
||||
assert {:ok, account} = Accounts.signup(Fake.account())
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
defmodule VoxPublica.ChannelCase do
|
||||
defmodule Bonfire.ChannelCase do
|
||||
@moduledoc """
|
||||
This module defines the test case to be used by
|
||||
channel tests.
|
||||
|
@ -11,7 +11,7 @@ defmodule VoxPublica.ChannelCase do
|
|||
we enable the SQL sandbox, so changes done to the database
|
||||
are reverted at the end of every test. If you are using
|
||||
PostgreSQL, you can even run database tests asynchronously
|
||||
by setting `use VoxPublicaWeb.ChannelCase, async: true`, although
|
||||
by setting `use Bonfire.ChannelCase, async: true`, although
|
||||
this option is not recommended for other databases.
|
||||
"""
|
||||
|
||||
|
@ -21,18 +21,18 @@ defmodule VoxPublica.ChannelCase do
|
|||
quote do
|
||||
# Import conveniences for testing with channels
|
||||
import Phoenix.ChannelTest
|
||||
import VoxPublica.ChannelCase
|
||||
import Bonfire.ChannelCase
|
||||
|
||||
# The default endpoint for testing
|
||||
@endpoint CommonsPub.WebPhoenix.Endpoint
|
||||
@endpoint Bonfire.WebPhoenix.Endpoint
|
||||
end
|
||||
end
|
||||
|
||||
setup tags do
|
||||
:ok = Ecto.Adapters.SQL.Sandbox.checkout(VoxPublica.Repo)
|
||||
:ok = Ecto.Adapters.SQL.Sandbox.checkout(Bonfire.Repo)
|
||||
|
||||
unless tags[:async] do
|
||||
Ecto.Adapters.SQL.Sandbox.mode(VoxPublica.Repo, {:shared, self()})
|
||||
Ecto.Adapters.SQL.Sandbox.mode(Bonfire.Repo, {:shared, self()})
|
||||
end
|
||||
|
||||
:ok
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
defmodule VoxPublica.ConnCase do
|
||||
defmodule Bonfire.ConnCase do
|
||||
@moduledoc """
|
||||
This module defines the test case to be used by
|
||||
tests that require setting up a connection.
|
||||
|
@ -11,7 +11,7 @@ defmodule VoxPublica.ConnCase do
|
|||
we enable the SQL sandbox, so changes done to the database
|
||||
are reverted at the end of every test. If you are using
|
||||
PostgreSQL, you can even run database tests asynchronously
|
||||
by setting `use VoxPublicaWeb.ConnCase, async: true`, although
|
||||
by setting `use Bonfire.ConnCase, async: true`, although
|
||||
this option is not recommended for other databases.
|
||||
"""
|
||||
|
||||
|
@ -23,22 +23,22 @@ defmodule VoxPublica.ConnCase do
|
|||
import Plug.Conn
|
||||
import Phoenix.ConnTest
|
||||
import Phoenix.LiveViewTest
|
||||
import VoxPublica.ConnCase
|
||||
import VoxPublica.Test.ConnHelpers
|
||||
import VoxPublica.Test.FakeHelpers
|
||||
alias VoxPublica.Fake
|
||||
alias CommonsPub.WebPhoenix.Router.Helpers, as: Routes
|
||||
import Bonfire.ConnCase
|
||||
import Bonfire.Test.ConnHelpers
|
||||
import Bonfire.Test.FakeHelpers
|
||||
alias Bonfire.Fake
|
||||
alias Bonfire.WebPhoenix.Router.Helpers, as: Routes
|
||||
|
||||
# The default endpoint for testing
|
||||
@endpoint CommonsPub.WebPhoenix.Endpoint
|
||||
@endpoint Bonfire.WebPhoenix.Endpoint
|
||||
end
|
||||
end
|
||||
|
||||
setup tags do
|
||||
:ok = Ecto.Adapters.SQL.Sandbox.checkout(VoxPublica.Repo)
|
||||
:ok = Ecto.Adapters.SQL.Sandbox.checkout(Bonfire.Repo)
|
||||
|
||||
unless tags[:async] do
|
||||
Ecto.Adapters.SQL.Sandbox.mode(VoxPublica.Repo, {:shared, self()})
|
||||
Ecto.Adapters.SQL.Sandbox.mode(Bonfire.Repo, {:shared, self()})
|
||||
end
|
||||
|
||||
{:ok, []}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
defmodule VoxPublica.Test.ConnHelpers do
|
||||
defmodule Bonfire.Test.ConnHelpers do
|
||||
|
||||
import ExUnit.Assertions
|
||||
import Plug.Conn
|
||||
|
@ -8,7 +8,7 @@ defmodule VoxPublica.Test.ConnHelpers do
|
|||
alias CommonsPub.Accounts.Account
|
||||
alias CommonsPub.Users.User
|
||||
|
||||
@endpoint CommonsPub.WebPhoenix.Endpoint
|
||||
@endpoint Bonfire.WebPhoenix.Endpoint
|
||||
|
||||
### conn
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
defmodule VoxPublica.DataCase do
|
||||
defmodule Bonfire.DataCase do
|
||||
@moduledoc """
|
||||
This module defines the setup for tests requiring
|
||||
access to the application's data layer.
|
||||
|
@ -10,7 +10,7 @@ defmodule VoxPublica.DataCase do
|
|||
we enable the SQL sandbox, so changes done to the database
|
||||
are reverted at the end of every test. If you are using
|
||||
PostgreSQL, you can even run database tests asynchronously
|
||||
by setting `use VoxPublica.DataCase, async: true`, although
|
||||
by setting `use Bonfire.DataCase, async: true`, although
|
||||
this option is not recommended for other databases.
|
||||
"""
|
||||
|
||||
|
@ -18,20 +18,20 @@ defmodule VoxPublica.DataCase do
|
|||
|
||||
using do
|
||||
quote do
|
||||
alias VoxPublica.Repo
|
||||
alias Bonfire.Repo
|
||||
|
||||
import Ecto
|
||||
import Ecto.Changeset
|
||||
import Ecto.Query
|
||||
import VoxPublica.DataCase
|
||||
import Bonfire.DataCase
|
||||
end
|
||||
end
|
||||
|
||||
setup tags do
|
||||
:ok = Ecto.Adapters.SQL.Sandbox.checkout(VoxPublica.Repo)
|
||||
:ok = Ecto.Adapters.SQL.Sandbox.checkout(Bonfire.Repo)
|
||||
|
||||
unless tags[:async] do
|
||||
Ecto.Adapters.SQL.Sandbox.mode(VoxPublica.Repo, {:shared, self()})
|
||||
Ecto.Adapters.SQL.Sandbox.mode(Bonfire.Repo, {:shared, self()})
|
||||
end
|
||||
|
||||
:ok
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
defmodule VoxPublica.DataHelpers do
|
||||
defmodule Bonfire.DataHelpers do
|
||||
|
||||
# import ExUnit.Assertions
|
||||
# alias VoxPublica.Fake
|
||||
# alias Bonfire.Fake
|
||||
|
||||
end
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
defmodule VoxPublica.Test.FakeHelpers do
|
||||
defmodule Bonfire.Test.FakeHelpers do
|
||||
|
||||
alias CommonsPub.Accounts.Account
|
||||
alias VoxPublica.{Fake, Repo}
|
||||
alias CommonsPub.Me.{Accounts, Users}
|
||||
alias Bonfire.{Fake, Repo}
|
||||
alias Bonfire.Me.{Accounts, Users}
|
||||
import ExUnit.Assertions
|
||||
|
||||
def fake_account!(attrs \\ %{}) do
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
ExUnit.start()
|
||||
Ecto.Adapters.SQL.Sandbox.mode(VoxPublica.Repo, :manual)
|
||||
Ecto.Adapters.SQL.Sandbox.mode(Bonfire.Repo, :manual)
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
defmodule CommonsPub.Me.UsersTest do
|
||||
defmodule Bonfire.Me.UsersTest do
|
||||
|
||||
use VoxPublica.DataCase, async: true
|
||||
alias CommonsPub.Me.{Accounts, Users}
|
||||
alias VoxPublica.Fake
|
||||
use Bonfire.DataCase, async: true
|
||||
alias Bonfire.Me.{Accounts, Users}
|
||||
alias Bonfire.Fake
|
||||
|
||||
test "creation works" do
|
||||
assert {:ok, account} = Accounts.signup(Fake.account())
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
defmodule CommonsPub.WebPhoenix.ChangePasswordController.Test do
|
||||
defmodule Bonfire.WebPhoenix.ChangePasswordController.Test do
|
||||
|
||||
use VoxPublica.ConnCase
|
||||
# alias CommonsPub.Me.Accounts
|
||||
use Bonfire.ConnCase
|
||||
# alias Bonfire.Me.Accounts
|
||||
|
||||
# test "form renders" do
|
||||
# conn = conn()
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
defmodule CommonsPub.WebPhoenix.ConfirmEmailController.Test do
|
||||
defmodule Bonfire.WebPhoenix.ConfirmEmailController.Test do
|
||||
|
||||
use VoxPublica.ConnCase
|
||||
alias VoxPublica.Fake
|
||||
use Bonfire.ConnCase
|
||||
alias Bonfire.Fake
|
||||
|
||||
describe "request" do
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
defmodule CommonsPub.WebPhoenix.CreateUserController.Test do
|
||||
defmodule Bonfire.WebPhoenix.CreateUserController.Test do
|
||||
|
||||
use VoxPublica.ConnCase
|
||||
use Bonfire.ConnCase
|
||||
|
||||
test "form renders" do
|
||||
alice = fake_account!()
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
defmodule CommonsPub.WebPhoenix.ForgotPasswordController.Test do
|
||||
defmodule Bonfire.WebPhoenix.ForgotPasswordController.Test do
|
||||
|
||||
use VoxPublica.ConnCase
|
||||
# alias CommonsPub.Me.Accounts
|
||||
use Bonfire.ConnCase
|
||||
# alias Bonfire.Me.Accounts
|
||||
|
||||
# test "form renders" do
|
||||
# conn = conn()
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
defmodule CommonsPub.WebPhoenix.LoginController.Test do
|
||||
defmodule Bonfire.WebPhoenix.LoginController.Test do
|
||||
|
||||
use VoxPublica.ConnCase
|
||||
alias CommonsPub.Me.Accounts
|
||||
use Bonfire.ConnCase
|
||||
alias Bonfire.Me.Accounts
|
||||
|
||||
test "form renders" do
|
||||
conn = conn()
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
defmodule CommonsPub.WebPhoenix.ResetPasswordController.Test do
|
||||
defmodule Bonfire.WebPhoenix.ResetPasswordController.Test do
|
||||
|
||||
use VoxPublica.ConnCase
|
||||
# alias VoxPublica.Fake
|
||||
use Bonfire.ConnCase
|
||||
# alias Bonfire.Fake
|
||||
|
||||
# describe "request" do
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
defmodule CommonsPub.WebPhoenix.SignupController.Test do
|
||||
defmodule Bonfire.WebPhoenix.SignupController.Test do
|
||||
|
||||
use VoxPublica.ConnCase
|
||||
use Bonfire.ConnCase
|
||||
|
||||
test "form renders" do
|
||||
conn = conn()
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
defmodule CommonsPub.WebPhoenix.SwitchUserController.Test do
|
||||
defmodule Bonfire.WebPhoenix.SwitchUserController.Test do
|
||||
|
||||
use VoxPublica.ConnCase
|
||||
alias VoxPublica.Fake
|
||||
use Bonfire.ConnCase
|
||||
alias Bonfire.Fake
|
||||
|
||||
describe "index" do
|
||||
|
||||
|
|
Loading…
Reference in a new issue