mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
Correct length for the truncate text helper. Closes #2913.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3080 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
This commit is contained in:
parent
173544f56c
commit
fb3fc46cdd
3 changed files with 9 additions and 7 deletions
|
@ -1,5 +1,7 @@
|
|||
*SVN*
|
||||
|
||||
* Correct length for the truncate text helper. #2913 [Stefan Kaes]
|
||||
|
||||
* Update to Prototype 1.4.0_rc3. Closes #1893, #2505, #2550, #2748, #2783. [Sam Stephenson]
|
||||
|
||||
* Add support for new rjs templates which wrap an update_page block. [Marcel Molina Jr.]
|
||||
|
|
|
@ -20,12 +20,12 @@ module ActionView
|
|||
# if the +text+ is longer than +length+.
|
||||
def truncate(text, length = 30, truncate_string = "...")
|
||||
if text.nil? then return end
|
||||
|
||||
l = length - truncate_string.length
|
||||
if $KCODE == "NONE"
|
||||
text.length > length ? text[0..(length - 3)] + truncate_string : text
|
||||
text.length > length ? text[0...l] + truncate_string : text
|
||||
else
|
||||
chars = text.split(//)
|
||||
chars.length > length ? chars[0..(length-3)].join + truncate_string : text
|
||||
chars.length > length ? chars[0...l].join + truncate_string : text
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -24,7 +24,7 @@ class TextHelperTest < Test::Unit::TestCase
|
|||
|
||||
def test_truncate
|
||||
assert_equal "Hello World!", truncate("Hello World!", 12)
|
||||
assert_equal "Hello Worl...", truncate("Hello World!!", 12)
|
||||
assert_equal "Hello Wor...", truncate("Hello World!!", 12)
|
||||
end
|
||||
|
||||
def test_truncate_multibyte_without_kcode
|
||||
|
@ -34,7 +34,7 @@ class TextHelperTest < Test::Unit::TestCase
|
|||
truncate("\354\225\210\353\205\225\355\225\230\354\204\270\354\232\224", 10)
|
||||
CODE
|
||||
|
||||
assert_equal "\354\225\210\353\205\225\355\225...", result
|
||||
assert_equal "\354\225\210\353\205\225\355...", result
|
||||
end
|
||||
|
||||
def test_truncate_multibyte_with_kcode
|
||||
|
@ -47,7 +47,7 @@ class TextHelperTest < Test::Unit::TestCase
|
|||
truncate("\354\225\204\353\246\254\353\236\221 \354\225\204\353\246\254\353\236 \354\225\204\353\235\274\353\246\254\354\230\244", 10)
|
||||
CODE
|
||||
|
||||
assert_equal "\354\225\204\353\246\254\353\236\221 \354\225\204\353\246\254\353\236 \354\225\204...", result
|
||||
assert_equal "\354\225\204\353\246\254\353\236\221 \354\225\204\353\246\254\353\236 ...", result
|
||||
end
|
||||
|
||||
def test_strip_links
|
||||
|
@ -165,7 +165,7 @@ class TextHelperTest < Test::Unit::TestCase
|
|||
url = "http://api.rubyonrails.com/Foo.html"
|
||||
email = "fantabulous@shiznadel.ic"
|
||||
|
||||
assert_equal %(<p><a href="#{url}">#{url[0..7]}...</a><br /><a href="mailto:#{email}">#{email[0..7]}...</a><br /></p>), auto_link("<p>#{url}<br />#{email}<br /></p>") { |url| truncate(url, 10) }
|
||||
assert_equal %(<p><a href="#{url}">#{url[0...7]}...</a><br /><a href="mailto:#{email}">#{email[0...7]}...</a><br /></p>), auto_link("<p>#{url}<br />#{email}<br /></p>") { |url| truncate(url, 10) }
|
||||
end
|
||||
|
||||
def test_sanitize_form
|
||||
|
|
Loading…
Reference in a new issue