diff --git a/Gemfile.lock b/Gemfile.lock index 28b6f70..fc5e0ac 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -2,43 +2,47 @@ GEM remote: https://rubygems.org/ specs: ast (2.4.2) + base64 (0.1.1) json (2.6.3) + language_server-protocol (3.17.0.3) parallel (1.23.0) - parser (3.2.2.3) + parser (3.2.2.4) ast (~> 2.4.1) racc prettier_print (1.2.1) racc (1.7.1) rainbow (3.1.1) - regexp_parser (2.8.1) - rexml (3.2.5) - rubocop (1.52.1) + regexp_parser (2.8.2) + rexml (3.2.6) + rubocop (1.57.1) + base64 (~> 0.1.1) json (~> 2.3) + language_server-protocol (>= 3.17.0) parallel (~> 1.10) - parser (>= 3.2.2.3) + parser (>= 3.2.2.4) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 1.8, < 3.0) rexml (>= 3.2.5, < 4.0) - rubocop-ast (>= 1.28.0, < 2.0) + rubocop-ast (>= 1.28.1, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 3.0) rubocop-ast (1.29.0) parser (>= 3.2.1.0) - rubocop-capybara (2.18.0) + rubocop-capybara (2.19.0) rubocop (~> 1.41) - rubocop-discourse (3.2.0) + rubocop-discourse (3.4.0) rubocop (>= 1.1.0) rubocop-rspec (>= 2.0.0) - rubocop-factory_bot (2.23.1) + rubocop-factory_bot (2.24.0) rubocop (~> 1.33) - rubocop-rspec (2.22.0) + rubocop-rspec (2.24.1) rubocop (~> 1.33) rubocop-capybara (~> 2.17) rubocop-factory_bot (~> 2.22) ruby-progressbar (1.13.0) - syntax_tree (6.1.1) + syntax_tree (6.2.0) prettier_print (>= 1.2.0) - unicode-display_width (2.4.2) + unicode-display_width (2.5.0) PLATFORMS ruby diff --git a/app/models/assignment.rb b/app/models/assignment.rb index 8d0b897..f89a6f8 100644 --- a/app/models/assignment.rb +++ b/app/models/assignment.rb @@ -9,11 +9,11 @@ class Assignment < ActiveRecord::Base belongs_to :target, polymorphic: true scope :joins_with_topics, - -> { + -> do joins( "INNER JOIN topics ON topics.id = assignments.target_id AND assignments.target_type = 'Topic' AND topics.deleted_at IS NULL", ) - } + end scope :active_for_group, ->(group) { where(assigned_to: group, active: true) } diff --git a/lib/assigner.rb b/lib/assigner.rb index 7165686..b2c053f 100644 --- a/lib/assigner.rb +++ b/lib/assigner.rb @@ -530,7 +530,7 @@ class ::Assigner "" end return "unassigned#{suffix}" if assignment.assigned_to_user? - return "unassigned_group#{suffix}" if assignment.assigned_to_group? + "unassigned_group#{suffix}" if assignment.assigned_to_group? end def already_assigned?(assign_to, type, note, status) diff --git a/lib/discourse_assign/group_extension.rb b/lib/discourse_assign/group_extension.rb index 628c882..923f5a7 100644 --- a/lib/discourse_assign/group_extension.rb +++ b/lib/discourse_assign/group_extension.rb @@ -5,7 +5,7 @@ module DiscourseAssign def self.prepended(base) base.class_eval do scope :assignable, - ->(user) { + ->(user) do where( "assignable_level in (:levels) OR ( @@ -18,7 +18,7 @@ module DiscourseAssign levels: alias_levels(user), user_id: user&.id, ) - } + end end end end diff --git a/spec/lib/pending_assigns_reminder_spec.rb b/spec/lib/pending_assigns_reminder_spec.rb index 04c1201..cadebf9 100644 --- a/spec/lib/pending_assigns_reminder_spec.rb +++ b/spec/lib/pending_assigns_reminder_spec.rb @@ -4,10 +4,12 @@ require "rails_helper" require_relative "../support/assign_allowed_group" def assert_reminder_not_created - expect { subject.remind(user) }.not_to change { Post.count } + expect { reminder.remind(user) }.not_to change { Post.count } end RSpec.describe PendingAssignsReminder do + subject(:reminder) { described_class.new } + before { SiteSetting.assign_enabled = true } let(:user) { Fabricate(:user) } @@ -48,7 +50,7 @@ RSpec.describe PendingAssignsReminder do it "creates a reminder for a particular user and sets the timestamp of the last reminder" do freeze_time - subject.remind(user) + reminder.remind(user) post = Post.last @@ -71,8 +73,8 @@ RSpec.describe PendingAssignsReminder do end it "deletes previous reminders when creating a new one" do - subject.remind(user) - subject.remind(user) + reminder.remind(user) + reminder.remind(user) reminders_count = Topic @@ -84,7 +86,7 @@ RSpec.describe PendingAssignsReminder do end it "doesn't delete reminders from a different user" do - subject.remind(user) + reminder.remind(user) another_user = Fabricate(:user) add_to_assign_allowed_group(another_user) 3.times do @@ -92,7 +94,7 @@ RSpec.describe PendingAssignsReminder do Assigner.new(post.topic, user).assign(another_user) end - subject.remind(another_user) + reminder.remind(another_user) reminders_count = Topic @@ -104,9 +106,9 @@ RSpec.describe PendingAssignsReminder do end it "doesn't delete reminders if they have replies" do - subject.remind(user) + reminder.remind(user) Fabricate(:post, topic: Topic.last) - subject.remind(user) + reminder.remind(user) reminders_count = Topic @@ -123,7 +125,7 @@ RSpec.describe PendingAssignsReminder do @post5 = Fabricate(:post) Assigner.new(@post5.topic, user).assign(user) - subject.remind(user) + reminder.remind(user) post = Post.last topic = post.topic @@ -133,7 +135,7 @@ RSpec.describe PendingAssignsReminder do @post5.topic.update_status("closed", true, Discourse.system_user) expect(@post5.topic.closed).to eq(true) - subject.remind(user) + reminder.remind(user) post = Post.last topic = post.topic