🖥
#Rspec での double と spy の違い ( Rspec double and spy : behaviour differen
double
unable to use undefined method
定義していないメソッドは使えない
user = double(name: :alice).name
# => :alice
user = double(name: :alice).address
# => [#<RSpec::Mocks::MockExpectationError: #<Double (anonymous)> received unexpected message :address with (no args)>]
spy
定義していないメソッドも使える、メソッドチェーンができる
able to undefined method and it returns double
user = spy(name: :alice).name
# => :alice
user = spy(name: :alice).adress
# => #<Double (anonymous)>
spy.a.b.c
# => #<Double (anonymous)>
spy.to_s.b.c
# NoMethodError: undefined method `c' for "#[Double (anonymous)]":String
Original by Github issue
チャットメンバー募集
何か質問、悩み事、相談などあればLINEオープンチャットもご利用ください。
公開日時
2020-04-18
Discussion