私はMichael HartlのRuby on Railsチュートリアルに従っています。私は彼が彼のテストを実行するためにminitestを使用したことを観察します。私はRSpecを使用します。以下は、私がRSpecで複製したいチュートリアルのコード行です。assert(minitest)に相当するRSpec構文は何ですか
test "email validation should accept valid addresses" do
valid_addresses = %w[[email protected] [email protected] [email protected]
[email protected] [email protected]]
valid_addresses.each do |valid_address|
@user.email = valid_address
assert @user.valid?, "#{valid_address.inspect} should be valid"
end
end
これはRSpecでこれを行う方法です。
it "email validation should accept valid addresses" do
valid_addresses = ["[email protected]", "[email protected]", "[email protected]",
"[email protected]", "[email protected]"]
valid_addresses.each do |valid_address|
user.email = valid_address
expect(@user.valid?).to be true, "#{valid_address.inspect} is not correct"
end
end
ただし、このテストを実行すると、引数エラーが発生します。 RSpecは、テストケースでは1つの引数しか期待していないようです。
これはtypo @margoです。 '' 'user'''は' '@ user'''でなければなりません。エラーメッセージは次のとおりです: '' 'ArgumentError: 引数の数が間違っています(与えられた2、期待される1)' '' –