controller can accept a parameter as to whether the notification should be marked as read or unread
This commit is contained in:
parent
2817fb95de
commit
f2be6e8bcf
2 changed files with 12 additions and 2 deletions
|
|
@ -11,7 +11,7 @@ class NotificationsController < VannaController
|
|||
def update(opts=params)
|
||||
note = Notification.where(:recipient_id => current_user.id, :id => opts[:id]).first
|
||||
if note
|
||||
note.update_attributes(:unread => false)
|
||||
note.update_attributes(:unread => opts[:is_unread] || false )
|
||||
{}
|
||||
else
|
||||
Response.new :status => 404
|
||||
|
|
|
|||
|
|
@ -14,11 +14,21 @@ describe NotificationsController do
|
|||
end
|
||||
|
||||
describe '#update' do
|
||||
it 'marks a notification as read' do
|
||||
it 'marks a notification as read if it gets no other information' do
|
||||
note = Factory(:notification, :recipient => @user)
|
||||
@controller.update :id => note.id
|
||||
Notification.first.unread.should == false
|
||||
end
|
||||
it 'marks a notification as read if it is told to' do
|
||||
note = Factory(:notification, :recipient => @user)
|
||||
@controller.update :id => note.id, :is_unread => false
|
||||
Notification.first.unread.should == false
|
||||
end
|
||||
it 'marks a notification as unread if it is told to' do
|
||||
note = Factory(:notification, :recipient => @user)
|
||||
@controller.update :id => note.id, :is_unread => true
|
||||
Notification.first.unread.should == true
|
||||
end
|
||||
|
||||
it 'only lets you read your own notifications' do
|
||||
user2 = bob
|
||||
|
|
|
|||
Loading…
Reference in a new issue