summaryrefslogtreecommitdiff
path: root/test/strscan/test_stringscanner.rb
diff options
context:
space:
mode:
authorakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-12-28 14:55:43 +0000
committerakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-12-28 14:55:43 +0000
commit1c0416e6eed8fa11e02c406fca40c9c1f6f87450 (patch)
tree6ccaf84184b95c99b6e80b3ff231bfa0c8a31a61 /test/strscan/test_stringscanner.rb
parentf413b838141884fef9cff48891b9a494d2d8f3aa (diff)
* ext/strscan/strscan.c (str_new): new function for allocate an string
with encoding propagation. (extract_range): use str_new. (extract_beg_len): ditto. (strscan_peek): ditto. (strscan_rest): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14772 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/strscan/test_stringscanner.rb')
-rw-r--r--test/strscan/test_stringscanner.rb13
1 files changed, 9 insertions, 4 deletions
diff --git a/test/strscan/test_stringscanner.rb b/test/strscan/test_stringscanner.rb
index c918368435..687aaa575c 100644
--- a/test/strscan/test_stringscanner.rb
+++ b/test/strscan/test_stringscanner.rb
@@ -289,7 +289,7 @@ class TestStringScanner < Test::Unit::TestCase
assert_nil s.getch
s = StringScanner.new("\244\242".force_encoding("euc-jp"))
- assert_equal "\244\242", s.getch
+ assert_equal "\244\242".force_encoding("euc-jp"), s.getch
assert_nil s.getch
s = StringScanner.new('test')
@@ -317,8 +317,8 @@ class TestStringScanner < Test::Unit::TestCase
assert_nil s.get_byte
s = StringScanner.new("\244\242".force_encoding("euc-jp"))
- assert_equal "\244", s.get_byte
- assert_equal "\242", s.get_byte
+ assert_equal "\244".force_encoding("euc-jp"), s.get_byte
+ assert_equal "\242".force_encoding("euc-jp"), s.get_byte
assert_nil s.get_byte
s = StringScanner.new('test')
@@ -414,7 +414,7 @@ class TestStringScanner < Test::Unit::TestCase
s = StringScanner.new("\244\242".force_encoding("euc-jp"))
s.getch
- assert_equal "\244\242", s[0]
+ assert_equal "\244\242".force_encoding("euc-jp"), s[0]
str = 'test'
str.taint
@@ -536,4 +536,9 @@ class TestStringScanner < Test::Unit::TestCase
s.terminate
assert_nil s.matched_size
end
+
+ def test_encoding
+ ss = StringScanner.new("\xA1\xA2".force_encoding("euc-jp"))
+ assert_equal(Encoding::EUC_JP, ss.scan(/./e).encoding)
+ end
end