CCText/tests/t_context.py
2024-04-11 23:25:09 +03:00

37 lines
1.3 KiB
Python

''' Unit tests: context. '''
import unittest
from cctext.context import Entity
class TestEntity(unittest.TestCase):
'''Test Entity termform access.'''
def setUp(self):
self.alias = 'X1'
self.nominal = 'человек'
self.text1 = 'test1'
self.form1 = ['sing', 'datv']
self.entity = Entity(self.alias, self.nominal, [{'text': self.text1, 'grams': self.form1}])
def test_attributes(self):
self.assertEqual(self.entity.alias, self.alias)
self.assertEqual(self.entity.get_nominal(), self.nominal)
self.assertEqual(self.entity.manual, [{'text': self.text1, 'grams': self.form1}])
def test_get_form(self):
self.assertEqual(self.entity.get_form([]), self.nominal)
self.assertEqual(self.entity.get_form(self.form1), self.text1)
self.assertEqual(self.entity.get_form(['invalid tags']), '!Неизвестная граммема: invalid tags!')
self.assertEqual(self.entity.get_form(['plur']), 'люди')
def test_set_nominal(self):
new_nominal = 'TEST'
self.assertEqual(self.entity.get_form(['plur']), 'люди')
self.entity.set_nominal(new_nominal)
self.assertEqual(self.entity.get_nominal(), new_nominal)
self.assertEqual(self.entity.get_form(['plur']), new_nominal)
self.assertEqual(self.entity.manual, [])