Я использую Ruby on Rails 3.1.0 и гем rspec-rails 2
.Я хотел бы проверить, были ли некоторые session
данные установлены на nil
.
В моем контроллере у меня есть:
def create
...
session[:user] = nil
...
end
В связанном файле спецификаций, который я хотел бы сделатьчто-то вроде следующего:
it "should be set to nil" do
# Here I would like to expect if the 'session[:user]' is set to 'nil'
# NOT using this approach:
#
# session[:user].should be_nil
#
# That is, I would be sure that the 'session[:user] = nil' runs the same way
# I may do with method "expectation". For example:
#
# mock_model(User).should_receive(:find).and_return(nil)
#
# Maybe a solution can be similar to this (note: of course, the following
# doesn't work):
#
# session[:user].should_receive(:"=").and_return(nil)
post :create, { ... }, { ... }
...
end
Возможно ли это?Если да, то как?
PS : Я хотел бы использовать этот подход для проверки определенного внутреннего поведения.
ОБНОВЛЕНИЕ ... и как я могу проверить следующее?
session[:user][:nested_key] = nil