Update to refactor tests for resource forms.
This commit is contained in:
@@ -12,13 +12,8 @@ defmodule DecentralisedBookIndex.Metadata.Forms.AuthorFormTest do
|
|||||||
test "user can't submit" do
|
test "user can't submit" do
|
||||||
user = generate(user())
|
user = generate(user())
|
||||||
|
|
||||||
valid_params = %{
|
|
||||||
"name" => "Oleh",
|
|
||||||
"description" => "A cool author"
|
|
||||||
}
|
|
||||||
|
|
||||||
assert_raise Ash.Error.Forbidden, fn ->
|
assert_raise Ash.Error.Forbidden, fn ->
|
||||||
form =
|
_form =
|
||||||
AshPhoenix.Form.for_create(Metadata.Author, :create,
|
AshPhoenix.Form.for_create(Metadata.Author, :create,
|
||||||
as: "author",
|
as: "author",
|
||||||
actor: user
|
actor: user
|
||||||
@@ -28,12 +23,7 @@ defmodule DecentralisedBookIndex.Metadata.Forms.AuthorFormTest do
|
|||||||
end
|
end
|
||||||
|
|
||||||
test "moderator can submit", %{user: user} do
|
test "moderator can submit", %{user: user} do
|
||||||
valid_params = %{
|
assert _form =
|
||||||
"name" => "Oleh",
|
|
||||||
"description" => "A cool author"
|
|
||||||
}
|
|
||||||
|
|
||||||
assert form =
|
|
||||||
AshPhoenix.Form.for_create(Metadata.Author, :create,
|
AshPhoenix.Form.for_create(Metadata.Author, :create,
|
||||||
as: "author",
|
as: "author",
|
||||||
actor: user
|
actor: user
|
||||||
@@ -55,7 +45,7 @@ defmodule DecentralisedBookIndex.Metadata.Forms.AuthorFormTest do
|
|||||||
actor: user
|
actor: user
|
||||||
)
|
)
|
||||||
|
|
||||||
assert {:ok, author} = AshPhoenix.Form.submit(form, params: valid_params)
|
assert {:ok, _author} = AshPhoenix.Form.submit(form, params: valid_params)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -74,7 +64,7 @@ defmodule DecentralisedBookIndex.Metadata.Forms.AuthorFormTest do
|
|||||||
actor: user
|
actor: user
|
||||||
)
|
)
|
||||||
|
|
||||||
assert {:ok, author} = AshPhoenix.Form.submit(form, params: valid_params)
|
assert {:ok, _author} = AshPhoenix.Form.submit(form, params: valid_params)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -4,7 +4,6 @@ defmodule DecentralisedBookIndex.Metadata.Forms.BookFormTest do
|
|||||||
import ExUnitProperties
|
import ExUnitProperties
|
||||||
|
|
||||||
alias DecentralisedBookIndex.Metadata
|
alias DecentralisedBookIndex.Metadata
|
||||||
alias DecentralisedBookIndex.Metadata.Book
|
|
||||||
|
|
||||||
setup do
|
setup do
|
||||||
user = generate(user(role: :moderator))
|
user = generate(user(role: :moderator))
|
||||||
@@ -14,22 +13,9 @@ defmodule DecentralisedBookIndex.Metadata.Forms.BookFormTest do
|
|||||||
describe "form submiting" do
|
describe "form submiting" do
|
||||||
test "user can't submit" do
|
test "user can't submit" do
|
||||||
user = generate(user())
|
user = generate(user())
|
||||||
bids = bids()
|
|
||||||
author_roles = author_roles()
|
|
||||||
|
|
||||||
valid_params = %{
|
|
||||||
"title" => "Book",
|
|
||||||
"description" => "A cool author",
|
|
||||||
"format" => "Paper",
|
|
||||||
"language" => "English",
|
|
||||||
"page_count" => 600,
|
|
||||||
"published" => ~D[2025-03-06],
|
|
||||||
"author_roles" => author_roles,
|
|
||||||
"bids" => bids
|
|
||||||
}
|
|
||||||
|
|
||||||
assert_raise Ash.Error.Forbidden, fn ->
|
assert_raise Ash.Error.Forbidden, fn ->
|
||||||
form =
|
_form =
|
||||||
AshPhoenix.Form.for_create(Metadata.Book, :create,
|
AshPhoenix.Form.for_create(Metadata.Book, :create,
|
||||||
as: "book",
|
as: "book",
|
||||||
actor: user
|
actor: user
|
||||||
@@ -39,21 +25,7 @@ defmodule DecentralisedBookIndex.Metadata.Forms.BookFormTest do
|
|||||||
end
|
end
|
||||||
|
|
||||||
test "moderator can submit", %{user: user} do
|
test "moderator can submit", %{user: user} do
|
||||||
bids = bids(actor: user)
|
assert _form =
|
||||||
author_roles = author_roles(actor: user)
|
|
||||||
|
|
||||||
valid_params = %{
|
|
||||||
"title" => "Book",
|
|
||||||
"description" => "A cool author",
|
|
||||||
"format" => "Paper",
|
|
||||||
"language" => "English",
|
|
||||||
"page_count" => 600,
|
|
||||||
"published" => ~D[2025-03-06],
|
|
||||||
"author_roles" => author_roles,
|
|
||||||
"bids" => bids
|
|
||||||
}
|
|
||||||
|
|
||||||
assert form =
|
|
||||||
AshPhoenix.Form.for_create(Metadata.Book, :create,
|
AshPhoenix.Form.for_create(Metadata.Book, :create,
|
||||||
as: "book",
|
as: "book",
|
||||||
actor: user
|
actor: user
|
||||||
@@ -86,7 +58,7 @@ defmodule DecentralisedBookIndex.Metadata.Forms.BookFormTest do
|
|||||||
actor: user
|
actor: user
|
||||||
)
|
)
|
||||||
|
|
||||||
assert {:ok, user} = AshPhoenix.Form.submit(form, params: valid_params)
|
assert {:ok, _book} = AshPhoenix.Form.submit(form, params: valid_params)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -106,7 +78,7 @@ defmodule DecentralisedBookIndex.Metadata.Forms.BookFormTest do
|
|||||||
actor: user
|
actor: user
|
||||||
)
|
)
|
||||||
|
|
||||||
assert {:ok, user} = AshPhoenix.Form.submit(form, params: valid_params)
|
assert {:ok, _book} = AshPhoenix.Form.submit(form, params: valid_params)
|
||||||
end
|
end
|
||||||
|
|
||||||
test "update bids and authors", %{user: user} do
|
test "update bids and authors", %{user: user} do
|
||||||
@@ -125,7 +97,7 @@ defmodule DecentralisedBookIndex.Metadata.Forms.BookFormTest do
|
|||||||
actor: user
|
actor: user
|
||||||
)
|
)
|
||||||
|
|
||||||
assert {:ok, user} = AshPhoenix.Form.submit(form, params: valid_params)
|
assert {:ok, _book} = AshPhoenix.Form.submit(form, params: valid_params)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -12,12 +12,8 @@ defmodule DecentralisedBookIndex.Metadata.Forms.PublisherFormTest do
|
|||||||
test "user can't submit" do
|
test "user can't submit" do
|
||||||
user = generate(user())
|
user = generate(user())
|
||||||
|
|
||||||
valid_params = %{
|
|
||||||
"name" => "Publisher"
|
|
||||||
}
|
|
||||||
|
|
||||||
assert_raise Ash.Error.Forbidden, fn ->
|
assert_raise Ash.Error.Forbidden, fn ->
|
||||||
form =
|
_form =
|
||||||
AshPhoenix.Form.for_create(Metadata.Publisher, :create,
|
AshPhoenix.Form.for_create(Metadata.Publisher, :create,
|
||||||
as: "publisher",
|
as: "publisher",
|
||||||
actor: user
|
actor: user
|
||||||
@@ -27,11 +23,7 @@ defmodule DecentralisedBookIndex.Metadata.Forms.PublisherFormTest do
|
|||||||
end
|
end
|
||||||
|
|
||||||
test "moderator can submit", %{user: user} do
|
test "moderator can submit", %{user: user} do
|
||||||
valid_params = %{
|
assert _form =
|
||||||
"name" => "Publisher"
|
|
||||||
}
|
|
||||||
|
|
||||||
assert form =
|
|
||||||
AshPhoenix.Form.for_create(Metadata.Publisher, :create,
|
AshPhoenix.Form.for_create(Metadata.Publisher, :create,
|
||||||
as: "publisher",
|
as: "publisher",
|
||||||
actor: user
|
actor: user
|
||||||
|
|||||||
Reference in New Issue
Block a user