1 # -*- coding: utf-8 -*-
3 from __future__
import absolute_import
6 from jbparse
import kanjidic2
8 SRC_NAME
= "kanjidic2.xml"
9 SRC_DIR
= "../../dicts"
11 SRC_NAME
= "/".join((SRC_DIR
, SRC_NAME
))
13 class Kanjidic2Test(unittest
.TestCase
):
16 self
.parser
= kanjidic2
.Parser(SRC_NAME
)
18 def test_single_kanji_search(self
):
19 """KANJIDIC2: Search for single kanji"""
21 l
= [entry
for entry
in self
.parser
.search(query
)]
22 self
.assertEqual(len(l
), 1)
23 self
.assertEqual(query
, l
[0].literal
)
25 def test_multi_kanji_search(self
):
26 """KANJIDIC2: Search for multiple kanji at once"""
28 l
= [entry
for entry
in self
.parser
.search(query
)]
29 self
.assertEqual(len(l
), 2)
31 self
.assertTrue(char
in [entry
.literal
for entry
in l
])
33 def test_mixed_search(self
):
34 """KANJIDIC2: Search query with kanji and non-kanji characters"""
35 query
= u
"天気はいいから、散歩しましょう。 Right?"
36 l
= [entry
for entry
in self
.parser
.search(query
)]
37 self
.assertEqual(len(l
), 4)
39 self
.assertTrue(char
in [entry
.literal
for entry
in l
])
44 if __name__
== "__main__":