Rspec 3.1.0-为什么#to方法不适用于#x27;真的';?
为什么只有(不推荐的)should语句对我有效? 注释掉的Rspec 3.1.0-为什么#to方法不适用于#x27;真的';?,rspec,Rspec,为什么只有(不推荐的)should语句对我有效? 注释掉的#expect语句失败,尽管它们完全遵循课程中的示例 require 'rails_helper' describe Vote do describe "validations" do describe 'value validation' do it "only allows -1 or 1 as values" do vgood1 = Vote.create :value => 1
#expect
语句失败,尽管它们完全遵循课程中的示例
require 'rails_helper'
describe Vote do
describe "validations" do
describe 'value validation' do
it "only allows -1 or 1 as values" do
vgood1 = Vote.create :value => 1
vgood2 = Vote.create :value => -1
vbad1 = Vote.create :value => 0
vbad2 = Vote.create :value => 2
vbad3 = Vote.create
expect (vgood1.valid?).should == true#eq(true)
# expect (vgood2.valid?).to eq(true)
# expect (vbad1.valid?).to eq(false)
# expect (vbad2.valid?).to eq(false)
# expect (vbad3.valid?).to eq(false)
end
end
end
end
以下是课程中的示例
Failures:
1) Vote validations value validation only allows -1 or 1 as values
Failure/Error: expect(bad_v.valid?).to eq(false)
expected: false
got: true
这看起来像是一个空白错误 由于隐含的括号,Ruby读到:
expect (vgood2.valid?).to eq(true)
因此:
expect((vgood2.valid?).to eq(true))
在后一种情况下,(vgood2.valid?
是没有定义to
方法的对象