Update to refactor AuthorAliasRegistry, its sync and test.
This commit is contained in:
@@ -15,19 +15,11 @@ defmodule DecentralisedBookIndex.Metadata.AuthorAliasRegistry do
|
|||||||
defaults [:read, :create, :update, :destroy]
|
defaults [:read, :create, :update, :destroy]
|
||||||
|
|
||||||
create :sync_create do
|
create :sync_create do
|
||||||
accept [:id]
|
accept [:id, :dbi_server_id]
|
||||||
|
|
||||||
argument :dbi_server_id, :uuid do
|
|
||||||
allow_nil? false
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
update :sync do
|
update :sync do
|
||||||
accept [:id]
|
accept [:id, :dbi_server_id]
|
||||||
|
|
||||||
argument :dbi_server_id, :uuid do
|
|
||||||
allow_nil? false
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
read :by_id do
|
read :by_id do
|
||||||
|
|||||||
@@ -4,13 +4,13 @@ defmodule DecentralisedBookIndex.Sync.AuthorAliasRegistrySync do
|
|||||||
|
|
||||||
def create_update(attrs, server_id) do
|
def create_update(attrs, server_id) do
|
||||||
case Metadata.get_author_alias_registry_by_id(attrs.id) do
|
case Metadata.get_author_alias_registry_by_id(attrs.id) do
|
||||||
{:ok, author} ->
|
{:ok, alias_registry} ->
|
||||||
attrs =
|
attrs =
|
||||||
attrs
|
attrs
|
||||||
|> Map.delete(:id)
|
|> Map.delete(:id)
|
||||||
|> Map.put(:dbi_server_id, server_id)
|
|> Map.put(:dbi_server_id, server_id)
|
||||||
|
|
||||||
author
|
alias_registry
|
||||||
|> Ash.Changeset.for_update(:sync, attrs)
|
|> Ash.Changeset.for_update(:sync, attrs)
|
||||||
|> Ash.update!()
|
|> Ash.update!()
|
||||||
|
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ defmodule DecentralisedBookIndex.Sync.DataTransformers.AuthorAliasRegistrySyncTe
|
|||||||
}
|
}
|
||||||
|
|
||||||
assert :ok = AuthorAliasRegistrySync.create_update(attrs, server.id)
|
assert :ok = AuthorAliasRegistrySync.create_update(attrs, server.id)
|
||||||
assert {:ok, saved_alias} = Metadata.get_author_by_id(attrs.id)
|
assert {:ok, saved_alias} = Metadata.get_author_alias_registry_by_id(attrs.id)
|
||||||
assert server.id == saved_alias.dbi_server_id
|
assert server.id == saved_alias.dbi_server_id
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -30,7 +30,7 @@ defmodule DecentralisedBookIndex.Sync.DataTransformers.AuthorAliasRegistrySyncTe
|
|||||||
}
|
}
|
||||||
|
|
||||||
assert :ok = AuthorAliasRegistrySync.create_update(attrs, server.id)
|
assert :ok = AuthorAliasRegistrySync.create_update(attrs, server.id)
|
||||||
assert {:ok, saved_alias} = Metadata.get_author_by_id(attrs.id)
|
assert {:ok, saved_alias} = Metadata.get_author_alias_registry_by_id(attrs.id)
|
||||||
assert server.id == saved_alias.dbi_server_id
|
assert server.id == saved_alias.dbi_server_id
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user