Poszukuję czystego i krótkiego kodu do testowania sprawdzania poprawności w Rails Unittests.Prosta składnia do testowania Błędy sprawdzania poprawności
Obecnie zrobić coś takiego
test "create thing without name" do
assert_raise ActiveRecord::RecordInvalid do
Thing.create! :param1 => "Something", :param2 => 123
end
end
Chyba nie ma lepszego sposobu, który pokazuje również wiadomość walidacji?
Rozwiązanie:
Moje obecne rozwiązanie bez dodatkowych ram to:
test "create thing without name" do
thing = Thing.new :param1 => "Something", :param2 => 123
assert thing.invalid?
assert thing.errors.on(:name).any?
end
Dziękuję s dla odpowiedzi. Spróbuję rspec i inni trochę czasu. Na razie pomagam sobie z assert (record.invalid?) I assert_equal ([], record.errors.full_messages) – Roman