def morph_align_test(self): inst = self.xc[0] gloss_tokens = glosses(inst) morph_tokens = morphemes(inst) morph_align(gloss_tokens, morph_tokens) self.assertEqual(gloss_tokens[0].alignment, morph_tokens[0].id) self.assertEqual(gloss_tokens[1].alignment, morph_tokens[0].id) self.assertEqual(gloss_tokens[2].alignment, morph_tokens[0].id) self.assertEqual(gloss_tokens[3].alignment, morph_tokens[1].id) self.assertEqual(gloss_tokens[4].alignment, morph_tokens[1].id) self.assertEqual(gloss_tokens[7].alignment, morph_tokens[2].id) self.assertEqual(gloss_tokens[8].alignment, morph_tokens[3].id)
def more_morph_align_test(self): inst = self.xc[1] # Align the gloss/lang words (Needed for aligning morphs) add_gloss_lang_alignments(inst) gloss_tokens = glosses(inst) morph_tokens = morphemes(inst) # Do the alignment morph_align(gloss_tokens, morph_tokens) # Assert that the glosses are aligned... self.assertIsNotNone(gloss_tokens[0].alignment) self.assertEquals(gloss_tokens[11].alignment, morph_tokens[6].id) self.assertEquals(gloss_tokens[12].alignment, morph_tokens[6].id) self.assertEquals(gloss_tokens[13].alignment, morph_tokens[7].id) self.assertEquals(gloss_tokens[14].alignment, morph_tokens[7].id)