我在 lib/user_session.rb 中有这段代码
我的一个控制器通过包括 UserSession 使用它。
我该如何测试它?我在 spec/lib/user_session.rb 中添加了测试,但代码依赖于我不确定如何模拟的会话。
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