2 # Copyright (C) 2002-2004 Kouichirou Eto, All rights reserved.
3 # This file is in SJIS charset. Japanese Character ->
\8a¿
\8e\9a.
7 class TestBDB < Test::Unit::TestCase
9 @config = CHISE::Config.instance
11 assert_match(%r|/chise/char-db\Z|, dir)
13 file = dir+"/=jis-x0208/system-char-id"
14 db = BDB::Hash.open(file, nil, 0)
18 # @cdb = CHISE::CharDB.instance
19 # @sdb = CHISE::CodesysDB.instance
23 @db = CHISE::CodesysDB.instance
27 class TestCodesys < Test::Unit::TestCase
29 @db = CHISE::CodesysDB.instance
36 assert_equal(6287, @db.get("=jis-x0208").keys.length, "keys")
37 assert_equal(590, @db.get("japanese-jisx0208").keys.length, "keys")
38 assert_equal(499, @db.get("japanese-jisx0208-1978").keys.length, "keys")
39 assert_equal(593, @db.get("japanese-jisx0208-1990").keys.length, "keys")
40 assert_equal(6067, @db.get("japanese-jisx0212").keys.length, "keys")
41 assert_equal(1697, @db.get("japanese-jisx0213-1").keys.length, "keys")
42 assert_equal(2345, @db.get("japanese-jisx0213-2").keys.length, "keys")
43 assert_equal(4270, @db.get("ucs-jis").keys.length, "keys")
48 assert_instance_of(Array, @db.keys, "db.keys")
50 assert_equal(128, db.keys.length, "can get keys")
51 assert_equal(63, @db.get("katakana-jisx0201").keys.length, "keys")
52 assert_equal(94, @db.get("latin-jisx0201").keys.length, "keys")
55 @db.each("=jis-x0208"){|k, v| #
\88ø
\90\94\82ÌCodesys
\83f
\81[
\83^
\83x
\81[
\83X
\82Ì
\82»
\82ê
\82¼
\82ê
\82É
\91Î
\82µ
\82Ä
\8eÀ
\8ds
\82·
\82é
56 er0 = sprintf("&J90-%04X;", k)
57 er1 = CHISE::Character.new(v).to_er
58 counter += 1; break if 10 < counter
63 db = CHISE::CodesysDB.instance
64 codesys = db.get_codesys("ascii")
65 char = codesys.get(65)
66 assert_equal("A", char.to_s)
67 assert_equal(128, codesys.keys.length)
71 def nutest_jis_codesys
72 db = CHISE::CodesysDB.instance
73 codesys = db.get_codesys("=jis-x0208")
74 ks = codesys.keys.sort #
\82Æ
\82·
\82é
\82±
\82Æ
\82É
\82æ
\82Á
\82Ä
\81AJISX0208 1990
\82Ì
\8fW
\8d\87\91S
\95\94\82Ìkeys
\82ª
\93¾
\82ç
\82ê
\82é
75 # assert_equal(6880, ks.length)
76 assert_equal(8481, ks.first)
77 assert_equal(29566, ks.last)
78 char = codesys.get(15226) #"
\8e\9a"
79 assert_equal("
\8e\9a".su, char.to_s)
81 assert_equal("
\88\9f".su, codesys.get(12321))
82 jis = "
\88\9f".su.char.japanese_jisx0208_1990
83 # assert_equal("
\88\9f", codesys.get(jis))
84 # assert_equal("
\88\9f", sprintf("&J90-%04X;", jis).de_er)
86 # codesys = db.get_codesys("japanese-jisx0208-1990") #
\8b\8c\96¼
87 codesys = db.get_codesys("=jis-x0208-1990")
88 assert_equal(8481, ks.first)
89 assert_equal(29566, ks.last)