2012-11-25 4 views

答えて

100

優先構文は次のとおりです。

expect(@object).to be_a Shirt 

古い構文は次のとおりです。

@object.should be_an_instance_of Shirt 

注の間に非常に微妙な違いがあること二つ。シャツはその後、衣服からを継承した場合これらの期待の両方がを渡します:

expect(@object).to be_a Shirt 
expect(@object).to be_a Garment 

あなたがやると@objectがシャツの場合は、二期待が失敗します。

@object.should be_an_instance_of Shirt 
@object.should be_an_instance_of Garment 
7

あなたは、オブジェクトがクラスのインスタンスであるかどうかを確認したいわけ?もしそうなら、それは簡単です、ただclassを使用します。

@object.class.should == Shirt 
+0

感謝をこれはうまくいくでしょう。 –

関連する問題