1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00

Use native String#capitalize

This commit is contained in:
Francesco Rodríguez 2018-10-11 11:00:46 +02:00
parent e52b223487
commit 16e3b65674
2 changed files with 2 additions and 9 deletions

View file

@ -120,13 +120,6 @@ module ActiveSupport #:nodoc:
slice(0...translate_offset(limit))
end
# Converts the first character to uppercase and the remainder to lowercase.
#
# 'über'.mb_chars.capitalize.to_s # => "Über"
def capitalize
(slice(0) || chars("")).upcase + (slice(1..-1) || chars("")).downcase
end
# Capitalizes the first letter of every word, when possible.
#
# "ÉL QUE SE ENTERÓ".mb_chars.titleize.to_s # => "Él Que Se Enteró"
@ -184,7 +177,7 @@ module ActiveSupport #:nodoc:
to_s.as_json(options)
end
%w(capitalize reverse tidy_bytes).each do |method|
%w(reverse tidy_bytes).each do |method|
define_method("#{method}!") do |*args|
@wrapped_string = send(method, *args).to_s
self

View file

@ -477,7 +477,7 @@ class MultibyteCharsUTF8BehaviourTest < ActiveSupport::TestCase
def test_method_works_for_proxyed_methods
assert_equal "ll", "hello".mb_chars.method(:slice).call(2..3) # Defined on Chars
chars = "hello".mb_chars
chars = +"hello".mb_chars
assert_equal "Hello", chars.method(:capitalize!).call # Defined on Chars
assert_equal "Hello", chars
assert_equal "jello", "hello".mb_chars.method(:gsub).call(/h/, "j") # Defined on String