From 208ace72142b46f6510cf125a38735ff3f275a8e Mon Sep 17 00:00:00 2001 From: Jose Farias Date: Wed, 23 Oct 2024 18:49:40 -0600 Subject: [PATCH] Delegate Current.user to session --- app/models/bubble/assignable.rb | 2 -- app/models/current.rb | 8 ++------ test/fixtures/sessions.yml | 2 ++ test/models/bubble_test.rb | 3 +-- 4 files changed, 5 insertions(+), 10 deletions(-) create mode 100644 test/fixtures/sessions.yml diff --git a/app/models/bubble/assignable.rb b/app/models/bubble/assignable.rb index 543f52d3e..d8714e371 100644 --- a/app/models/bubble/assignable.rb +++ b/app/models/bubble/assignable.rb @@ -3,9 +3,7 @@ module Bubble::Assignable included do has_many :assignments, dependent: :delete_all - has_many :assignees, through: :assignments - has_many :assigners, through: :assignments scope :unassigned, -> { where.missing :assignments } scope :assigned_to, ->(users) { joins(:assignments).where(assignments: { assignee: users }) } diff --git a/app/models/current.rb b/app/models/current.rb index d534f3e58..e5546b93b 100644 --- a/app/models/current.rb +++ b/app/models/current.rb @@ -1,10 +1,6 @@ class Current < ActiveSupport::CurrentAttributes - attribute :session, :user + attribute :session + delegate :user, to: :session, allow_nil: true delegate :account, to: :user, allow_nil: true - - def session=(session) - super - self.user = session.user - end end diff --git a/test/fixtures/sessions.yml b/test/fixtures/sessions.yml new file mode 100644 index 000000000..397f75b57 --- /dev/null +++ b/test/fixtures/sessions.yml @@ -0,0 +1,2 @@ +david: + user: david diff --git a/test/models/bubble_test.rb b/test/models/bubble_test.rb index 62cebbb9a..6e7ba99b8 100644 --- a/test/models/bubble_test.rb +++ b/test/models/bubble_test.rb @@ -2,7 +2,7 @@ require "test_helper" class BubbleTest < ActiveSupport::TestCase setup do - Current.user = users(:kevin) + Current.session = sessions(:david) end test "boosting" do @@ -15,7 +15,6 @@ class BubbleTest < ActiveSupport::TestCase bubbles(:logo).assign users(:david) assert_equal users(:kevin, :jz, :david), bubbles(:logo).assignees - assert_equal users(:david, :kevin), bubbles(:logo).assigners.uniq assert_equal [ "David" ], Event.last.assignee_names end