Ich habe eine Testklasse:Wie überprüft man, ob eine benutzerdefinierte Ausnahme in einer Ruby-App ausgelöst wird?
require File.dirname(__FILE__) + '/../car.rb'
class CarTest < Test::Unit::TestCase
def test_set_color
assert_raise InvalidColorEntry "Exception not raised for invalid color" do
Car.set_color("not a color")
end
end
end
InvalidColorEntry ist eine Ausnahmeklasse, die ich wie so in der car.rb Datei platziert:
class InvalidColorEntry < Exception; end
class Car
...
end
Wenn ich den Test ausführen, ist Rubin sagt mir, dass "InvalidColorEntry" ist eine nicht definierte Methode. Ich habe sogar versucht, die Definition der Ausnahmeklasse in die Testdatei aufzunehmen, obwohl ich das nicht möchte.
Wie kann ich meine Testdatei über die benutzerdefinierte Ausnahmedefinition informieren? Es sieht offensichtlich die car.rb-Datei, weil es in der Lage ist, Car.set_color
anzurufen Danke!