Les deux réponses ci-dessus sont correctes, mais à la lumière de Karthik est question ci-dessus, je pensais que j'allais poster un test qui montre comment on peut avec précision passer un symbole de l' include
méthode
def test_you_create_a_new_symbol_in_the_test
array_of_symbols = []
array_of_symbols << Symbol.all_symbols
all_symbols = Symbol.all_symbols.map {|x| x}
assert_equal false, array_of_symbols.include?(:this_should_not_be_in_the_symbols_collection) #this works because we stored all symbols in an array before creating the symbol :this_should_not_be_in_the_symbols_collection in the test
assert_equal true, all_symbols.include?(:this_also_should_not_be_in_the_symbols_collection) #This is the case noted in previous answers...here we've created a new symbol (:this_also_should_not_be_in_the_symbols_collection) in the test and then mapped all the symbols for comparison. Since we created the symbol before querying all_symbols, this test passes.
end
Une note supplémentaire sur les Koans: faire usage de puts
des déclarations ainsi que des tests personnalisés si vous ne comprenez pas quelque chose. Par exemple, si vous voyez:
string = "the:rain:in:spain"
words = string.split(/:/)
et n'ont aucune idée de ce qu' words
peut-être, ajouter la ligne
puts words
et exécutez rake
à la ligne de commande. De même, des tests comme celui que j'ai ajouté ci-dessus peut être utile dans la compréhension de certaines des nuances Rubis.