我已經環顧四周,找不到這樣的問題:
爲Ruby公案280它告訴我下面的下劃線部分應該是假的:Ruby koan 280 - 哪裏是to_str的引用?
def test_to_str_allows_objects_to_be_treated_as_strings
assert_equal __, File.exist?(CanBeTreatedAsString.new) # test passes, if __ is changed to false
end
OK,挺好的。但是,如何測試to_str
允許將對象視爲字符串?這裏是CanBeTreatedAsString類,它不包括to_str
方法:
class CanBeTreatedAsString
def to_s
"string-like"
end
def to_str
to_s
end
end
...但怎麼就是有關上述assert_equal代碼?是.exist?
期望一個字符串? 此頁面:
http://www.ruby-doc.org/core-2.2.0/File.html#method-c-exist-3F
說參數可以是一個IO對象。是否有一些特定的方法來獲取它們所接受的參數類型如果是這樣,我怎麼說?