|
10 | 10 | class MorphemeTestCase(unittest.TestCase): |
11 | 11 | def test_nighit(self): |
12 | 12 | self.assertEqual(nighit("สํ", "คีต"), "สังคีต") |
| 13 | + self.assertEqual( |
| 14 | + nighit("สํ", "คีต "), "สังคีต" |
| 15 | + ) # w2 has trailing space, should still work |
| 16 | + self.assertEqual( |
| 17 | + nighit("สํ ", "คีต"), "สังคีต" |
| 18 | + ) # w1 has trailing space, should still work |
13 | 19 | self.assertEqual(nighit("สํ", "จร"), "สัญจร") |
14 | 20 | self.assertEqual(nighit("สํ", "ฐาน"), "สัณฐาน") |
15 | 21 | self.assertEqual(nighit("สํ", "นิษฐาน"), "สันนิษฐาน") |
16 | 22 | self.assertEqual(nighit("สํ", "ปทา"), "สัมปทา") |
17 | 23 | self.assertEqual(nighit("สํ", "โยค"), "สังโยค") |
| 24 | + self.assertEqual(nighit("", "คีต"), "คีต") # w1 is empty, should return w2 |
| 25 | + self.assertEqual(nighit("สํ", ""), "สํ") # w2 is empty, should return w1 |
| 26 | + |
18 | 27 | with self.assertRaises(NotImplementedError): |
19 | 28 | nighit("abc", "คีต") # w1 does not end with ํ and len > 2 |
20 | 29 | with self.assertRaises(NotImplementedError): |
21 | 30 | nighit("สํ", "มาร") # consonant ม is not in any supported group |
| 31 | + with self.assertRaises(ValueError): |
| 32 | + nighit("สํ", "123") # w2 does not contain any Thai consonant |
22 | 33 |
|
23 | 34 | def test_is_native_thai(self): |
24 | 35 | self.assertFalse(is_native_thai(None)) # type: ignore[arg-type] |
|
0 commit comments