Create system user with account (#1345)

* Create system user with account

* Update tests
This commit is contained in:
Stanko Krtalić
2025-10-17 20:23:34 +02:00
committed by GitHub
parent 844b1054f0
commit 6efeb03252
3 changed files with 11 additions and 7 deletions
+1
View File
@@ -5,6 +5,7 @@ class Account < ApplicationRecord
class << self
def create_with_admin_user(account:, owner:)
User.system
User.create!(**owner.reverse_merge(role: "admin", password: SecureRandom.hex(16)))
create!(**account)
end
+1 -1
View File
@@ -65,7 +65,7 @@ class Signup
password: password
}
)
@user = User.first
@user = User.find_by!(role: :admin)
@account.setup_basic_template
end
end
+9 -6
View File
@@ -24,12 +24,15 @@ class AccountTest < ActiveSupport::TestCase
assert_equal ActiveRecord::FixtureSet.identify("account-create-with-admin-user-test"), account.external_account_id
assert_equal "Account Create With Admin", account.name
assert_equal 1, User.count
User.first.tap do |user|
assert_equal "David", user.name
assert_equal "david@37signals.com", user.email_address
assert_equal "admin", user.role
end
assert_equal 2, User.count
system = User.find_by(role: "system")
assert system
admin = User.find_by(role: "admin")
assert_equal "David", admin.name
assert_equal "david@37signals.com", admin.email_address
assert_equal "admin", admin.role
end
end
end