在RSpec中,使用should == ...
和should eql(...)
有什麼區別?我注意到RSpec文檔總是使用eql
,但==
更少打字並且更易於閱讀。我錯過了什麼?RSpec:「應該== ...」和「應該eql(...)」之間的區別
10
A
回答
16
這是相當簡單,真的:should ==
發送==
消息被測試者,should eql
發送eql?
消息被測試者。換句話說:兩個不同的測試發送兩個完全不同的消息,它們調用兩個完全不同的方法,從而完成兩個完全不同的事情。特別是,eql?
比==
更嚴格,但比equals?
更嚴格。
15
他們通常是等價的,但並非總是如此:
1 == 1.0 # => true
1.eql? 1.0 # => false
+0
touche ... touche。 .. – 2010-07-19 22:35:05
相關問題
- 1. getcwd()和dirname(__ FILE__)之間的區別?我應該使用哪個?
- 2. 空的BSTR和NULL BSTR之間應該有區別嗎?
- 3. dev和prod之間應該有什麼區別wsdl
- 4. RSpec的應該be_true VS應該== TRUE
- 5. Rspec:允許和allow_any_instance_of之間的區別
- 6. .build,.create和.create之間的區別!什麼時候應該使用它們?
- 7. UML 1和UML 2之間的區別?我應該關注哪一個?
- 8. Scala FunSuite在比較列表時出現「應該是」和「===」之間的區別
- 9. 應該和should_not在rspec的3+
- 10. config.time_zone和config.local_zone之間有什麼區別,什麼時候應該設置?
- 11. RSpec - 日期應該在兩個日期之間
- 12. rspec XOR應該包括
- 13. rspec和水豚「應該找到」速記
- 14. Rspec中的'應該'是什麼?爲什麼`應該redirect_to`工作?
- 15. 應用程序域和應用程序池之間的區別?
- 16. Web應用程序和應用程序之間的區別?
- 17. 應用{}和應用{項目:...}之間的區別?
- 18. Windows應用商店應用:WinJS.Promise.join和queueEvent之間的區別
- 19. 登錄和註冊Facebook之間的區別,應用程序應該做什麼註冊?
- 20. !=和!之間的區別==
- 21. let和def之間的區別
- 22. .appxupload和.appxbundle之間有什麼區別,我應該上傳哪個應用商店?
- 23. RSpec的測試時,它應該
- 24. 失敗RSpec的測試應該通過
- 25. RSpec未定義的方法'應該'
- 26. notifyUrl響應和completePurchase響應之間有什麼區別?
- 27. 反應流和反應流之間有什麼區別?
- 28. 項目之間應該如何依賴?
- 29. Spring:我應該在@Transactional註解之間?
- 30. AlertDialog,Checkbox之間應該有一條線
http://batsov.com/articles/2011/11/28/ruby-tip-number-1-demystifying-the-difference-between-equals-equals-and-eql/ – Kris 2013-09-18 14:56:07