From 4970e9b391ca10526f0c31efe51e0ef2006e4a34 Mon Sep 17 00:00:00 2001 From: Matt-Yorkley <9029026+Matt-Yorkley@users.noreply.github.com> Date: Fri, 6 Nov 2020 17:55:09 +0000 Subject: [PATCH] Patch Paranoia#delete to resolve ActiveRecord::ConnectionAdapters::NullTransaction errors Patches Paranoia gem to fix a conflict with transactions in Rspec: https://github.com/rubysherpas/paranoia/issues/274 Example error: ``` Failure/Error: order.line_items.first.variant.tap(&:delete) NoMethodError: undefined method `state' for # ``` --- config/initializers/paranoia.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/initializers/paranoia.rb b/config/initializers/paranoia.rb index f0e5cf8ea150..0789eb4e954d 100644 --- a/config/initializers/paranoia.rb +++ b/config/initializers/paranoia.rb @@ -4,7 +4,7 @@ def paranoia_delete if persisted? # if a transaction exists, add the record so that after_commit # callbacks can be run - add_to_transaction + add_to_transaction unless self.class.connection.current_transaction.closed? update_columns(paranoia_destroy_attributes) elsif !frozen? assign_attributes(paranoia_destroy_attributes)