From cca0e57b21d506cd341b927984bcb68f0e461783 Mon Sep 17 00:00:00 2001 From: erdgeist Date: Tue, 14 Jul 2026 14:31:18 +0200 Subject: Retire wipe_draft! and find_or_create_draft from production code Both had already lost their reason to exist as production API: wipe_draft!'s one remaining callsite (nodes#show) was removed two sessions ago, and find_or_create_draft had zero production callers left at all -- confirmed by a fresh grep, not assumed -- every one of its ~65 call sites was test setup, unrelated to what those tests actually cover. wipe_draft! is deleted outright, along with its two tests -- the lock/draft/autosave cleanup it silently performed already has explicit, always-visible manual equivalents (Unlock, Discard Autosave, Destroy Draft), so nothing real is lost. find_or_create_draft moves to test_helper.rb as a plain method on ActiveSupport::TestCase, alongside the create_node_with_draft/ create_node_with_published_page helpers already living there -- extending the framework's own designated test-extension point rather than reopening the Node model from test code. Its three tests of real dispatch behavior (idempotency on repeat calls, and raising when a second user contends for the lock) are kept, since ~65 other tests depend on this helper actually working correctly; only the call syntax changed, from node.find_or_create_draft(user) to find_or_create_draft(node, user). --- test/models/event_test.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'test/models/event_test.rb') diff --git a/test/models/event_test.rb b/test/models/event_test.rb index e98605e..2a671b7 100644 --- a/test/models/event_test.rb +++ b/test/models/event_test.rb @@ -5,7 +5,7 @@ class EventTest < ActiveSupport::TestCase def setup Page.delete_all @cal_node = Node.root.children.create! :slug => "calendar" - @draft = @cal_node.find_or_create_draft User.first + @draft = find_or_create_draft(@cal_node, User.first) @draft.title = "99C3" @draft.abstract = "The 99th Chaos Comunication Congress" @draft.body = "Its totally freakin awesome" -- cgit v1.3