diff options
author | Manfred Stienstra <manfred@fngtps.com> | 2008-09-21 17:30:45 +0200 |
---|---|---|
committer | Manfred Stienstra <manfred@fngtps.com> | 2008-09-21 17:30:45 +0200 |
commit | 85c05b53948a64ab0e246239d18e01d317a74d7d (patch) | |
tree | 1c8e0d22c75da35c46a51a0c24a125428fd1a83d /activesupport/test | |
parent | 52f8c04e1e0f2e6610e54b00125179ec9dacbcd5 (diff) | |
download | rails-85c05b53948a64ab0e246239d18e01d317a74d7d.tar.gz rails-85c05b53948a64ab0e246239d18e01d317a74d7d.tar.bz2 rails-85c05b53948a64ab0e246239d18e01d317a74d7d.zip |
Add tests for u_unpack to make sure it raises an EncodingError on invalid UTF-8 strings.
Diffstat (limited to 'activesupport/test')
-rw-r--r-- | activesupport/test/multibyte_chars_test.rb | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/activesupport/test/multibyte_chars_test.rb b/activesupport/test/multibyte_chars_test.rb index 2fde4d3e30..8aae66b717 100644 --- a/activesupport/test/multibyte_chars_test.rb +++ b/activesupport/test/multibyte_chars_test.rb @@ -82,6 +82,17 @@ class MultibyteCharsTest < Test::Unit::TestCase assert !@proxy_class.consumes?(BYTE_STRING) end + def test_unpack_utf8_strings + assert_equal 4, @proxy_class.u_unpack(UNICODE_STRING).length + assert_equal 5, @proxy_class.u_unpack(ASCII_STRING).length + end + + def test_unpack_raises_encoding_error_on_broken_strings + assert_raises(ActiveSupport::Multibyte::EncodingError) do + @proxy_class.u_unpack(BYTE_STRING) + end + end + if RUBY_VERSION < '1.9' def test_concatenation_should_return_a_proxy_class_instance assert_equal ActiveSupport::Multibyte.proxy_class, ('a'.mb_chars + 'b').class |