FIX: Don't show liked consolidated notification when frequency is never.

FIX: Don’t show liked consolidated notification when frequency is never.

diff --git a/app/models/notification.rb b/app/models/notification.rb
index 4066370..bb69227 100644
--- a/app/models/notification.rb
+++ b/app/models/notification.rb
@@ -152,7 +152,14 @@ class Notification < ActiveRecord::Base
       .includes(:topic)
 
     if user.user_option.like_notification_frequency == UserOption.like_notification_frequency_type[:never]
-      notifications = notifications.where('notification_type <> ?', Notification.types[:liked])
+      [
+        Notification.types[:liked],
+        Notification.types[:liked_consolidated]
+      ].each do |notification_type|
+        notifications = notifications.where(
+          'notification_type <> ?', notification_type
+        )
+      end
     end
 
     notifications = notifications.to_a
diff --git a/spec/models/notification_spec.rb b/spec/models/notification_spec.rb
index 39b2055..3a7969f 100644
--- a/spec/models/notification_spec.rb
+++ b/spec/models/notification_spec.rb
@@ -303,6 +303,10 @@ describe Notification do
       fab(Notification.types[:liked], true)
     end
 
+    def liked_consolidated
+      fab(Notification.types[:liked_consolidated], true)
+    end
+
     it 'correctly finds visible notifications' do
       pm
       expect(Notification.visible.count).to eq(1)
@@ -322,5 +326,22 @@ describe Notification do
       expect(notifications.map { |n| n.id }).to eq([a.id, d.id, c.id])
 
     end
+
+    describe 'for a user that does not want to be notify on liked' do
+      before do
+        user.user_option.update!(
+          like_notification_frequency:
+            UserOption.like_notification_frequency_type[:never]
+        )
+      end
+
+      it "should not return any form of liked notifications" do
+        notification = pm
+        regular
+        liked_consolidated
+
+        expect(Notification.recent_report(user)).to contain_exactly(notification)
+      end
+    end
   end
 end

GitHub sha: f06b773d

1 Like