FIX: Don't show liked consolidated notification when frequency is never.
This commit is contained in:
parent
0b47ef6e86
commit
f06b773d25
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Reference in New Issue