From 932d4a4be40587fa6d489eca16a1ef6d6f2936d1 Mon Sep 17 00:00:00 2001 From: erdgeist Date: Thu, 23 Jul 2026 12:24:52 +0200 Subject: Witness asset uploads and out-of-band attaches in the action log --- test/models/node_attach_asset_test.rb | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'test/models') diff --git a/test/models/node_attach_asset_test.rb b/test/models/node_attach_asset_test.rb index cb5b60f5..2df2cfbb 100644 --- a/test/models/node_attach_asset_test.rb +++ b/test/models/node_attach_asset_test.rb @@ -95,6 +95,25 @@ class NodeAttachAssetTest < ActiveSupport::TestCase assert_raises(ActiveRecord::RecordInvalid) { @node.attach_asset!(@image, :user => @user) } end + test "attaching writes an asset_attach entry with node and asset participants" do + result = @node.attach_asset!(@image, :user => @user, :headline => true) + assert_equal :set, result[:headline] + + action = NodeAction.where(:action => "asset_attach").last + assert_equal @node, action.node + subjects = action.action_participants.map { |p| [p.subject_type, p.subject_id] } + assert_includes subjects, ["Node", @node.id] + assert_includes subjects, ["Asset", @image.id] + assert action.metadata["headline"] + end + + test "a fully redundant attach writes no entry" do + @node.attach_asset!(@image, :user => @user) + assert_no_difference 'NodeAction.count' do + @node.attach_asset!(@image, :user => @user) + end + end + private def create_image_asset -- cgit v1.3