Remove the internal API

* Bind sessions to identities
* Remove references to the identity token
* Move email changes to identity
* Move account menu into a turbo-frame
* Create tenants from a tenanted route
This commit is contained in:
Stanko Krtalić
2025-10-29 13:02:29 +01:00
committed by Stanko K.R.
parent 440631c790
commit 98755844a1
108 changed files with 1096 additions and 1796 deletions
@@ -1,39 +0,0 @@
require "test_helper"
class User::EmailAddressChangeableTest < ActiveSupport::TestCase
test "send_email_address_change_confirmation" do
user = users(:david)
new_email_address = "new@example.com"
assert_enqueued_jobs 1, only: ActionMailer::MailDeliveryJob do
user.send_email_address_change_confirmation(new_email_address)
end
assert_not_equal new_email_address, user.reload.email_address
end
test "generate_email_address_change_token" do
user = users(:david)
old_email = user.email_address
new_email = "david.new@37signals.com"
token = user.generate_email_address_change_token(to: new_email, expires_in: 30.minutes)
assert_kind_of String, token
assert token.present?
end
test "change_email_address_using_token" do
user = users(:david)
old_email = user.email_address
new_email = "david.new@37signals.com"
token = user.generate_email_address_change_token(to: new_email, expires_in: 30.minutes)
assert_equal old_email, user.reload.email_address
user.change_email_address_using_token(token)
assert_equal new_email, user.reload.email_address
end
end
-24
View File
@@ -1,24 +0,0 @@
require "test_helper"
class User::IdentifiableTest < ActiveSupport::TestCase
test "create" do
user = User.create!(
role: "member",
name: "New User",
email_address: "newuser@example.com"
)
assert user.identity.present?
assert_equal "newuser@example.com", user.identity.email_address
end
test "destroy" do
user = User.create!(name: "Bob")
assert Identity.find_by(email_address: user.email_address)
user.destroy!
assert_not Identity.find_by(email_address: user.email_address).memberships.exists?(tenant: user.tenant)
end
end
-10
View File
@@ -1,10 +0,0 @@
require "test_helper"
class User::StaffTest < ActiveSupport::TestCase
test "only 37s email addresses are considered staff" do
assert users(:kevin).staff?
users(:kevin).email_address = "kevin@hey.com"
assert_not users(:kevin).staff?
end
end