Extract concern, add tests

This commit is contained in:
Jorge Manrubia
2025-11-02 09:44:50 +01:00
parent 2ec5d37947
commit 4e2f56f4c0
4 changed files with 37 additions and 13 deletions
+1 -11
View File
@@ -1,5 +1,5 @@
class Account < ApplicationRecord
include Entropic
include Entropic, Seedeable
has_many_attached :uploads
@@ -25,16 +25,6 @@ class Account < ApplicationRecord
"/#{tenant}"
end
def setup_basic_template
user = User.first
Collection.create!(name: "Cards", creator: user, all_access: true)
end
def setup_customer_template
Account::Seeder.new(self, User.first).seed
end
private
def create_join_code
Account::JoinCode.create!
+13
View File
@@ -0,0 +1,13 @@
module Account::Seedeable
extend ActiveSupport::Concern
def setup_basic_template
user = User.first
Collection.create!(name: "Cards", creator: user, all_access: true)
end
def setup_customer_template
Account::Seeder.new(self, User.active.first).seed
end
end
-2
View File
@@ -4,8 +4,6 @@ class Account::Seeder
def initialize(account, creator)
@account = account
@creator = creator
puts creator.inspect
end
def seed
+23
View File
@@ -0,0 +1,23 @@
require "test_helper"
class Account::SedeableTest < ActiveSupport::TestCase
setup do
@account = Account.sole
end
test "setup_basic_template changes collection count" do
assert_changes -> { Collection.count } do
@account.setup_basic_template
end
end
test "setup_customer_template changes collections, cards, and comments count" do
assert_changes -> { Collection.count } do
assert_changes -> { Card.count } do
assert_changes -> { Comment.count } do
@account.setup_customer_template
end
end
end
end
end