Ich habe vor kurzem versucht, meine Schienen Fähigkeiten mit diesem Werkzeug schärfen:Gibt es eine zusätzliche Anleitung/Antwortschlüssel für Ruby Koans?
http://github.com/edgecase/ruby_koans
aber ich Mühe habe einige Tests vorbei. Auch bin ich mir nicht sicher, ob ich einige Dinge richtig mache, da das Ziel nur darin besteht, den Test zu bestehen, es gibt viele Wege, es zu bestehen und ich tue etwas, das nicht den Standards entspricht.
Gibt es eine Möglichkeit zu bestätigen, ob ich die Dinge richtig mache?
ein konkretes Beispiel:
in about_nil,
def test_nil_is_an_object
assert_equal __, nil.is_a?(Object), "Unlike NULL in other languages"
end
so ist es mir zu sagen, ob die zweite Klausel auf ein Objekt gleich ist zu prüfen (so kann ich sagen, nil ist ein Objekt) oder put assert_equal true, nil.is_a?(Object)
weil die Aussage wahr ist?
und der nächste Test:
def test_you_dont_get_null_pointer_errors_when_calling_methods_on_nil
# What happens when you call a method that doesn't exist. The
# following begin/rescue/end code block captures the exception and
# make some assertions about it.
begin
nil.some_method_nil_doesnt_know_about
rescue Exception => ex
# What exception has been caught?
assert_equal __, ex.class
# What message was attached to the exception?
# (HINT: replace __ with part of the error message.)
assert_match(/__/, ex.message)
end
end
im Erraten Ich sollte ein "No-Methode Fehler" Zeichenfolge im assert_match setzen, aber was ist mit dem assert_equal?
Interessant, nicht über die koans wusste, ich muss versuchen, sie. Vielleicht um Hilfe bitten oder nach Ratschlägen zu Dingen suchen, von denen Sie nicht denken, dass sie richtig sind, aber wenn Sie genauer sind, werden Sie bessere Antworten bekommen. – Chubas