2 # Copyright (C) 2002-2004 Kouichirou Eto, All rights reserved.
3 # This file is in SJIS charset. Japanese Character ->
\8a¿
\8e\9a.
7 class TestIconv < Test::Unit::TestCase
9 u8 = "
\8e\9a".sjistou8 # U+5B57 (0x8E9A): CJK Unified Ideograph
10 assert_equal("\345\255\227", u8)
11 assert_equal("\x8e\x9a", u8.u8tosjis)
12 assert_equal("\273\372", u8.u8toeuc)
13 assert_equal("\e$B;z\e(B", u8.u8tojis)
14 assert_equal(u8, u8.u8tosjis.sjistou8)
15 assert_equal(u8, u8.u8toeuc.euctou8)
16 assert_equal(u8, u8.u8tojis.jistou8)
17 u16 = "\x5b\x57" # "[W"
18 assert_equal(u16, u8.u8tou16)
20 assert_equal(u32, u8.u8tou32)
21 assert_equal(u8, u32.u32tou8)
22 assert_equal("[W", u32.u32tou16)
23 assert_equal("\273\372", u16.u16toeuc)
24 assert_equal("\216\232", u16.u16tosjis)
26 u8 = "
\8a¿
\8e\9a".sjistou8
27 assert_equal("\346\274\242\345\255\227", u8)
28 assert_equal("\212\277\x8e\x9a", u8.u8tosjis)
29 assert_equal("\264\301\273\372", u8.u8toeuc)
30 assert_equal("\e$B4A;z\e(B", u8.u8tojis)
32 assert_equal(u16, u8.u8tou16)
34 assert_equal(u32, u8.u8tou32)
35 assert_equal(u8, u32.u32tou8)
36 assert_equal("o\"[W", u32.u32tou16)
37 assert_equal("\264\301\273\372", u16.u16toeuc)
38 assert_equal("\212\277\216\232", u16.u16tosjis)
41 def test_original_iconv
42 u8 = "
\8e\9a".sjistou8
43 s = Iconv.iconv_to_from("UTF-16", "UTF-8", u8)
44 assert_equal("\376\377\x5b\x57", s) # \376\377 -> Byte Order Corder?
45 s = Iconv.iconv_to_from("UTF-32", "UTF-8", u8)
46 assert_equal("\0\0\376\377\0\0[W", s)