def test_last_message_user(self):
        context_data = MagicMock()
        context_data.get = MagicMock(return_value="existing_context_value")
        attribute_product_data = MagicMock()

        target = Target(context_data, attribute_product_data)
        target.extract_last_user_message = MagicMock(return_value="last_message")
        target.extract_entities = MagicMock(return_value="extracted_entities")
        target.remove_default_entities_if_detections = MagicMock(return_value="removed_entities")
        target.update_entities_with_last_message = MagicMock(return_value="entities_update_entities_with_last_message")
        target.create_entity_type_index_modifier = MagicMock(return_value="entities_create_entity_type_index_modifier")
        target.change_entities_weighting = MagicMock(return_value="entities_change_entities_weighting")

        target.add_product_counts = MagicMock(return_value="entities_add_product_counts")
        target.split_unsupported_entities = MagicMock(return_value=("supported_entities", "unsupported_entities"))

        target.update("context_id_value", "_rev_value", "messages_value")

        target.extract_last_user_message.assert_called_once_with("messages_value")
        context_data.get.assert_called_once_with("context_id_value", "_rev_value")
        target.extract_entities.assert_called_once_with("existing_context_value")
        target.update_entities_with_last_message.assert_called_once_with("extracted_entities", "last_message")
        target.remove_default_entities_if_detections.assert_called_once_with(
            "entities_update_entities_with_last_message"
        )
        target.create_entity_type_index_modifier.assert_called_once_with("removed_entities")
        target.change_entities_weighting.assert_called_once_with("entities_create_entity_type_index_modifier")
        target.add_product_counts.assert_called_once_with("entities_change_entities_weighting")
        target.split_unsupported_entities.assert_called_once_with("entities_add_product_counts")
        context_data.update.assert_called_once_with(
            "context_id_value", "_rev_value", unsupported_entities="unsupported_entities", entities="supported_entities"
        )
Ejemplo n.º 2
0
    def test_last_message_user(self):
        context_data = MagicMock()
        context_data.get = MagicMock(return_value="existing_context_value")
        attribute_product_data = MagicMock()

        target = Target(context_data, attribute_product_data)
        target.extract_last_user_message = MagicMock(
            return_value="last_message")
        target.extract_entities = MagicMock(return_value="extracted_entities")
        target.remove_default_entities_if_detections = MagicMock(
            return_value="removed_entities")
        target.update_entities_with_last_message = MagicMock(
            return_value="entities_update_entities_with_last_message")
        target.create_entity_type_index_modifier = MagicMock(
            return_value="entities_create_entity_type_index_modifier")
        target.change_entities_weighting = MagicMock(
            return_value="entities_change_entities_weighting")

        target.add_product_counts = MagicMock(
            return_value="entities_add_product_counts")
        target.split_unsupported_entities = MagicMock(
            return_value=("supported_entities", "unsupported_entities"))

        target.update("context_id_value", "_rev_value", "messages_value")

        target.extract_last_user_message.assert_called_once_with(
            "messages_value")
        context_data.get.assert_called_once_with('context_id_value',
                                                 '_rev_value')
        target.extract_entities.assert_called_once_with(
            'existing_context_value')
        target.update_entities_with_last_message.assert_called_once_with(
            'extracted_entities', 'last_message')
        target.remove_default_entities_if_detections.assert_called_once_with(
            'entities_update_entities_with_last_message')
        target.create_entity_type_index_modifier.assert_called_once_with(
            'removed_entities')
        target.change_entities_weighting.assert_called_once_with(
            'entities_create_entity_type_index_modifier')
        target.add_product_counts.assert_called_once_with(
            'entities_change_entities_weighting')
        target.split_unsupported_entities.assert_called_once_with(
            "entities_add_product_counts")
        context_data.update.assert_called_once_with(
            'context_id_value',
            '_rev_value',
            unsupported_entities="unsupported_entities",
            entities='supported_entities')
    def test_regular(self):
        context_data = MagicMock()
        attribute_product_data = MagicMock()

        target = Target(context_data, attribute_product_data)
        target.entity_product_count_cache = MagicMock(side_effect=(100, 0))

        actual = target.add_product_counts(
            [{"_id": 1, "key": "black", "type": "color"}, {"_id": 2, "key": "men", "type": "division"}]
        )

        self.assertListEqual(
            [
                {"meta": {"instock_product_count": 100}, "type": "color", "_id": 1, "key": "black"},
                {"meta": {"instock_product_count": 0}, "type": "division", "_id": 2, "key": "men"},
            ],
            actual,
        )

        self.assertListEqual(
            [call("color", "black"), call("division", "men")], target.entity_product_count_cache.call_args_list
        )
Ejemplo n.º 4
0
    def test_regular(self):
        context_data = MagicMock()
        attribute_product_data = MagicMock()

        target = Target(context_data, attribute_product_data)
        target.entity_product_count_cache = MagicMock(side_effect=(100, 0))

        actual = target.add_product_counts([{
            "_id": 1,
            "key": "black",
            "type": "color"
        }, {
            "_id": 2,
            "key": "men",
            "type": "division"
        }])

        self.assertListEqual([{
            'meta': {
                'instock_product_count': 100
            },
            'type': 'color',
            '_id': 1,
            'key': 'black'
        }, {
            'meta': {
                'instock_product_count': 0
            },
            'type': 'division',
            '_id': 2,
            'key': 'men'
        }], actual)

        self.assertListEqual([call('color', 'black'),
                              call('division', 'men')],
                             target.entity_product_count_cache.call_args_list)