diff options
author | Yasuo Honda <yasuo.honda@gmail.com> | 2017-12-19 21:14:55 +0000 |
---|---|---|
committer | Yasuo Honda <yasuo.honda@gmail.com> | 2017-12-20 11:52:01 +0000 |
commit | 01efbc128d1379d02dd14acf324d011944a1c429 (patch) | |
tree | f423627193befc7de8cf689ce6bbf62f3e088b60 /activerecord/test/cases/test_case.rb | |
parent | 053a4c699043ea5449effaba0549b2f8a5821228 (diff) | |
download | rails-01efbc128d1379d02dd14acf324d011944a1c429.tar.gz rails-01efbc128d1379d02dd14acf324d011944a1c429.tar.bz2 rails-01efbc128d1379d02dd14acf324d011944a1c429.zip |
Handle `FrozenError` if it is available
This pull request handles `FrozenError` introduced by Ruby 2.5.
Refer https://bugs.ruby-lang.org/projects/ruby-trunk/repository/revisions/61131
Since `FrozenError` is a subclass of `RuntimeError` minitest used by master
branch can handle it, though it would be better to handle `FrozenError`
explicitly if possible.
`FrozenError` does not exist in Ruby 2.4 or lower, `frozen_error_class`
handles which exception is expected to be raised.
This pull request is intended to be merged to master,
then backported to `5-1-stable` to address #31508
Diffstat (limited to 'activerecord/test/cases/test_case.rb')
-rw-r--r-- | activerecord/test/cases/test_case.rb | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/activerecord/test/cases/test_case.rb b/activerecord/test/cases/test_case.rb index 06a8693a7d..d8c96316ed 100644 --- a/activerecord/test/cases/test_case.rb +++ b/activerecord/test/cases/test_case.rb @@ -77,6 +77,10 @@ module ActiveRecord model.reset_column_information model.column_names.include?(column_name.to_s) end + + def frozen_error_class + Object.const_defined?(:FrozenError) ? FrozenError : RuntimeError + end end class PostgreSQLTestCase < TestCase |