Je le code dans lib/user_session.rbTest d'un décorateur de sessions lib en Ruby on Rails avec rspec
Son utilisé par l'un de mes contrôleurs via inclure UserSession.
Comment puis-je le tester? J'ai ajouté des tests dans spec/lib/user_session.rb mais le code repose sur la session dont je ne sais pas trop comment me moquer.
module UserSession
def viewed
session[:viewed] ||= Array.new
return session[:viewed]
end
def viewed_add(id, name)
if viewed.select{|b| b[:id] == id}.empty?
session[:viewed] << {:id => id, :name => name}
end
return session[:viewed]
end
def viewed_delete(id)
unless id.nil?
session[:viewed].delete_if{|b| b[:id] == id}
return session[:viewed]
end
end
end