From c4e0bebeb12fea3724bb4408d96e24c2c7840c93 Mon Sep 17 00:00:00 2001 From: Barnabas Jovanovics Date: Tue, 23 Jul 2024 11:55:25 +0200 Subject: [PATCH] use message in context --- test/support/resources/post.ex | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/test/support/resources/post.ex b/test/support/resources/post.ex index 7c29520..473a010 100644 --- a/test/support/resources/post.ex +++ b/test/support/resources/post.ex @@ -17,7 +17,7 @@ defmodule HasNoComments do @moduledoc false use Ash.Resource.Validation - def atomic(changeset, opts, _context) do + def atomic(changeset, _opts, context) do # Test multiple types of aggregates in a single validation condition = case changeset.context.aggregate do @@ -42,7 +42,7 @@ defmodule HasNoComments do {:atomic, [], condition, expr( error(^Ash.Error.Changes.InvalidChanges, %{ - message: ^opts[:message] || "Post has comments" + message: ^context.message || "Post has comments" }) )} ] @@ -129,21 +129,31 @@ defmodule AshPostgres.Test.Post do end destroy :destroy_if_no_comments do - validate({HasNoComments, message: "Can only delete if Post has no comments"}) + validate HasNoComments do + message "Can only delete if Post has no comments" + end end update :update_if_no_comments do - validate({HasNoComments, message: "Can only update if Post has no comments"}) + validate HasNoComments do + message "Can only update if Post has no comments" + end end destroy :destroy_if_no_comments_non_atomic do require_atomic?(false) - validate({HasNoComments, message: "Can only delete if Post has no comments"}) + + validate HasNoComments do + message "Can only delete if Post has no comments" + end end update :update_if_no_comments_non_atomic do require_atomic?(false) - validate({HasNoComments, message: "Can only update if Post has no comments"}) + + validate HasNoComments do + message "Can only update if Post has no comments" + end end update :update_only_freds do