DataMapper を使用している Sinatra アプリケーションを RSpec でテストしています。
次のコード:
it "should update the item's title" do
lambda do
post "/hello/edit", :params => {
:title => 'goodbye',
:body => 'goodbye world'
}
end.should change(Snippet, :title).from('hello').to('goodbye')
end
次のエラーが発生します。
タイトルは最初は「hello」である必要がありましたが、 #<DataMapper::Property::String @model=Snippet @name=:title> でした
もちろん、ラムダを削除して次のことのみを確認することで、これをハックできます。
Snippet.first.title.should == 'goodbye'
しかし、 .firstスニペットは将来同じではない可能性があるため、それは長期的な解決策にはなりません。
誰かが正しい構文を教えてくれますか?
ありがとう。