我必须在这里遗漏一些超级简单的东西。在下面的rspec代码中,第二个断言失败,代码应该设置为true:
describe "#redeem!" do
it "marks a code as redeemed" do
existing_code = LotteryCode[promo_code: "A5"]
existing_code.is_redeemed.should == false
existing_code.redeem!
changed_code = LotteryCode[promo_code: "A5"]
changed_code.is_redeemed.should == true
end
end
以下是型号代码:
require 'sequel'
class LotteryCode < Sequel::Model
many_to_one :campus
def redeem!
is_redeemed = true
save
end
end
我做错了什么?
答案 0 :(得分:2)
您想要self.is_redeemed = true
,您当前的代码只会创建一个本地变量。