Насколько я вижу из вашего кода, вы полагаетесь не столько на сессию, сколько на объект, соответствующий базовому интерфейсу в форме считывателя скобок.
Теперь я сам не использую RSpec, поэтому не могу точно сказать, как его использовать в этом сценарии, но я бы создал фиктивный класс с методом экземпляра считывателя скобок или даже хеш, а затем проверил этот объект, например
fake_session = { :viewer => nil }
class << fake_session
include UserSession
end
assert_equal [], fake_session.viewer
Надеюсь, это поможет.