mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
a930f5ba06
### Summary There was an issues when using `safe_constantize` on a string that has the wrong case. File `em.rb` defines `EM`. `"Em".safe_constantize` causes a little confusion with the autoloader. The autoloader finds file "em.rb", expecting it to define `Em`, but `Em` is not defined. The autoloader raises a `LoadError`, which is good, But `safe_constantize` is defined to return `nil` when a class is not found. ### Before ``` "Em".safe_constantize LoadError: Unable to autoload constant Em, \ expected rails/activesupport/test/autoloading_fixtures/em.rb to define it ``` ### After ``` "Em".safe_constantize # => nil ``` |
||
---|---|---|
.. | ||
autoloading_fixtures | ||
cache | ||
concurrency | ||
core_ext | ||
dependencies | ||
deprecation | ||
file_fixtures | ||
fixtures | ||
json | ||
messages | ||
metadata | ||
notifications | ||
testing | ||
xml_mini | ||
abstract_unit.rb | ||
array_inquirer_test.rb | ||
autoload_test.rb | ||
benchmarkable_test.rb | ||
broadcast_logger_test.rb | ||
callback_inheritance_test.rb | ||
callbacks_test.rb | ||
class_cache_test.rb | ||
clean_backtrace_test.rb | ||
clean_logger_test.rb | ||
concern_test.rb | ||
configurable_test.rb | ||
constantize_test_cases.rb | ||
current_attributes_test.rb | ||
dependencies_test.rb | ||
dependencies_test_helpers.rb | ||
deprecation_test.rb | ||
descendants_tracker_test_cases.rb | ||
descendants_tracker_with_autoloading_test.rb | ||
descendants_tracker_without_autoloading_test.rb | ||
digest_test.rb | ||
encrypted_configuration_test.rb | ||
encrypted_file_test.rb | ||
evented_file_update_checker_test.rb | ||
executor_test.rb | ||
file_update_checker_shared_tests.rb | ||
file_update_checker_test.rb | ||
gzip_test.rb | ||
hash_with_indifferent_access_test.rb | ||
i18n_test.rb | ||
inflector_test.rb | ||
inflector_test_cases.rb | ||
key_generator_test.rb | ||
lazy_load_hooks_test.rb | ||
log_subscriber_test.rb | ||
logger_test.rb | ||
message_encryptor_test.rb | ||
message_verifier_test.rb | ||
multibyte_chars_test.rb | ||
multibyte_conformance_test.rb | ||
multibyte_grapheme_break_conformance_test.rb | ||
multibyte_normalization_conformance_test.rb | ||
multibyte_proxy_test.rb | ||
multibyte_test_helpers.rb | ||
notifications_test.rb | ||
number_helper_i18n_test.rb | ||
number_helper_test.rb | ||
option_merger_test.rb | ||
ordered_hash_test.rb | ||
ordered_options_test.rb | ||
parameter_filter_test.rb | ||
reloader_test.rb | ||
rescuable_test.rb | ||
safe_buffer_test.rb | ||
security_utils_test.rb | ||
share_lock_test.rb | ||
silence_logger_test.rb | ||
string_inquirer_test.rb | ||
subscriber_test.rb | ||
tagged_logging_test.rb | ||
test_case_test.rb | ||
time_travel_test.rb | ||
time_zone_test.rb | ||
time_zone_test_helpers.rb | ||
transliterate_test.rb | ||
xml_mini_test.rb |