Checked if msds are valid

This commit is contained in:
2021-09-10 16:27:57 +02:00
parent 67382bb74f
commit eca02ebdd3
3 changed files with 29 additions and 16 deletions

View File

@@ -39,23 +39,23 @@ class JosMsdToPropertiesTestCase(unittest.TestCase):
self.assertEqual(properties.lexeme_feature_map, {'vrsta':'občno_ime', 'spol':'ženski'})
self.assertEqual(properties.form_feature_map, {'število':'množina', 'sklon':'dajalnik'})
def test_exception_feature_level(self): # testing level exception: ('pronoun', 8, 'ti')
def test_exception_feature_level(self):
properties = self.converter.msd_to_properties(Msd('Pp2-sd--y', 'en'), 'sl', 'ti')
self.assertEqual(properties.language, 'sl')
self.assertEqual(properties.category, 'zaimek')
self.assertEqual(properties.lexeme_feature_map, {'vrsta':'osebni', 'oseba':'druga'})
self.assertEqual(properties.form_feature_map, {'število':'ednina', 'sklon':'dajalnik', 'naslonskost':'klitična'})
def test_normal_feature_level(self): # invalid msd, but useful for testing contrast with previous test
properties = self.converter.msd_to_properties(Msd('Pp2-pd--y', 'en'), 'sl', 'vi')
def test_normal_feature_level(self):
properties = self.converter.msd_to_properties(Msd('Px------y', 'en'), 'sl', 'jst')
self.assertEqual(properties.language, 'sl')
self.assertEqual(properties.category, 'zaimek')
self.assertEqual(properties.lexeme_feature_map, {'vrsta':'osebni', 'oseba':'druga', 'naslonskost':'klitična'})
self.assertEqual(properties.form_feature_map, {'število':'množina', 'sklon':'dajalnik'})
self.assertEqual(properties.lexeme_feature_map, {'vrsta':'povratni', 'naslonskost':'klitična'})
self.assertEqual(properties.form_feature_map, {})
def test_featureless(self):
properties = self.converter.msd_to_properties(Msd('V', 'sl'), 'en')
properties = self.converter.msd_to_properties(Msd('U', 'sl'), 'en')
self.assertEqual(properties.language, 'en')
self.assertEqual(properties.category, 'conjunction')
self.assertEqual(properties.category, 'punctuation')
self.assertEqual(properties.lexeme_feature_map, {})
self.assertEqual(properties.form_feature_map, {})

View File

@@ -37,12 +37,11 @@ class JosPropertiesToMsdTestCase(unittest.TestCase):
self.assertEqual(msd.code, 'Pp2-sd--y')
def test_normal_feature_level(self):
msd = self.converter.properties_to_msd(Properties('zaimek', {'vrsta':'osebni', 'oseba':'druga', 'naslonskost':'klitična'}, {'število':'množina', 'sklon':'dajalnik'}, 'sl'), 'en')
msd = self.converter.properties_to_msd(Properties('zaimek', {'vrsta':'povratni', 'naslonskost':'klitična'}, {}, 'sl'), 'en')
self.assertEqual(msd.language, 'en')
self.assertEqual(msd.code, 'Pp2-pd--y')
self.assertEqual(msd.code, 'Px------y')
def test_featureless(self):
msd = self.converter.properties_to_msd(Properties('conjunction', {}, {}, 'en'), 'sl')
msd = self.converter.properties_to_msd(Properties('punctuation', {}, {}, 'en'), 'sl')
self.assertEqual(msd.language, 'sl')
self.assertEqual(msd.code, 'V')
self.assertEqual(msd.code, 'U')