示例#1
0
    def test_5(self, mock_get_app_config):
        patch_get_app_config(mock_get_app_config)
        expected = 'дефолтный тунец'
        items = {
            'cases': {
                'лосось': [
                    'хорошая рыба'
                ],
                'килька': [
                    'консервы'
                ]
            },
            'default': 'дефолтный тунец'
        }
        text_preprocessing_result = PicklableMock()
        text_preprocessing_result.tokenized_elements_list_pymorphy = [
            {'lemma': 'мой'},
            {'lemma': 'дядя'},
            {'lemma': 'самый'},
            {'lemma': 'честный'},
            {'lemma': 'правило'},
        ]

        filler = IntersectionFieldFiller(items)
        result = filler.extract(text_preprocessing_result, None)

        self.assertEqual(expected, result)
示例#2
0
    def test_2(self, mock_get_app_config):
        patch_get_app_config(mock_get_app_config)
        items = {
            'strict': True,
            'cases': {
                'лосось': [
                    'хорошая рыба'
                ],
                'килька': [
                    'консервы'
                ]
            }
        }
        text_preprocessing_result = PicklableMock()
        text_preprocessing_result.tokenized_elements_list_pymorphy = [
            {'lemma': 'весь'},
            {'lemma': 'хороший'},
            {'lemma': 'и'},
            {'lemma': 'спасибо'},
            {'lemma': 'за'},
            {'lemma': 'рыба'},
        ]

        filler = IntersectionFieldFiller(items)
        result = filler.extract(text_preprocessing_result, None)

        self.assertIsNone(result)
示例#3
0
    def test_4(self, mock_get_app_config):
        patch_get_app_config(mock_get_app_config)
        items = {}
        text_preprocessing_result = PicklableMock()
        text_preprocessing_result.tokenized_elements_list_pymorphy = []

        filler = IntersectionFieldFiller(items)
        result = filler.extract(text_preprocessing_result, None)

        self.assertIsNone(result)
示例#4
0
 def test_intersection_requirement_true(self, mock_get_app_config):
     patch_get_app_config(mock_get_app_config)
     user = PicklableMock()
     requirement = IntersectionRequirement(
         {"phrases": [
             'да',
             'давай',
             'хочу',
         ]})
     text_normalization_result = PicklableMock()
     text_normalization_result.tokenized_elements_list_pymorphy = [
         {
             'lemma': 'я'
         },
         {
             'lemma': 'хотеть'
         },
     ]
     self.assertTrue(requirement.check(text_normalization_result, user))