mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
4ff626cac9
This change allows to instantiate all ActiveRecordError descendant execption classes without arguments, which might be useful in testing and is far less surprising than mandatory arguments.
16 lines
470 B
Ruby
16 lines
470 B
Ruby
require_relative "../cases/helper"
|
|
|
|
class ErrorsTest < ActiveRecord::TestCase
|
|
def test_can_be_instantiated_with_no_args
|
|
base = ActiveRecord::ActiveRecordError
|
|
error_klasses = ObjectSpace.each_object(Class).select { |klass| klass < base }
|
|
|
|
error_klasses.each do |error_klass|
|
|
begin
|
|
error_klass.new.inspect
|
|
rescue ArgumentError
|
|
raise "Instance of #{error_klass} can't be initialized with no arguments"
|
|
end
|
|
end
|
|
end
|
|
end
|