def test_parse_splitinfo(self): builder = DictionaryBuilder(logger=self.logger) builder.entries.extend([None] * 4) self.assertEqual([], builder.parse_splitinfo('*')) self.assertEqual([1, 2, 3], builder.parse_splitinfo('1/2/3')) self.assertEqual(2, builder.parse_splitinfo('1/U2/3')[1]) mocked_lexicon = mock.Mock(spec=Lexicon) mocked_lexicon.size.return_value = 4 builder = UserDictionaryBuilder(None, mocked_lexicon) builder.entries += [None, None, None] self.assertEqual([1, 2 | 1 << 28, 3], builder.parse_splitinfo("1/U2/3"))
def test_parse_splitinfo_invalid_wordid(self): builder = DictionaryBuilder(logger=self.logger) with self.assertRaises(ValueError) as cm: builder.parse_splitinfo('1/2/3') self.assertEqual('invalid word ID', cm.exception.args[0])