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)
|
.includes(:topic)
|
||||||
|
|
||||||
if user.user_option.like_notification_frequency == UserOption.like_notification_frequency_type[:never]
|
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
|
end
|
||||||
|
|
||||||
notifications = notifications.to_a
|
notifications = notifications.to_a
|
||||||
|
|
|
@ -303,6 +303,10 @@ describe Notification do
|
||||||
fab(Notification.types[:liked], true)
|
fab(Notification.types[:liked], true)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def liked_consolidated
|
||||||
|
fab(Notification.types[:liked_consolidated], true)
|
||||||
|
end
|
||||||
|
|
||||||
it 'correctly finds visible notifications' do
|
it 'correctly finds visible notifications' do
|
||||||
pm
|
pm
|
||||||
expect(Notification.visible.count).to eq(1)
|
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])
|
expect(notifications.map { |n| n.id }).to eq([a.id, d.id, c.id])
|
||||||
|
|
||||||
end
|
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
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue