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_non_attribute_regular(self):
        context_data = MagicMock()
        attribute_product_data = MagicMock()

        target = Target(context_data, attribute_product_data)

        supported, unsupported = target.split_unsupported_entities([{
            "_id":
            1,
            "meta": {
                "instock_product_count": 0
            },
            "type":
            "color"
        }, {
            "_id":
            2,
            "meta": {
                "instock_product_count": 0
            },
            "type":
            "non_attribute"
        }, {
            "_id":
            3,
            "meta": {
                "instock_product_count": 110
            },
            "type":
            "color"
        }])

        self.assertListEqual([{
            "_id": 2,
            "meta": {
                "instock_product_count": 0
            },
            "type": "non_attribute"
        }, {
            "_id": 3,
            "meta": {
                "instock_product_count": 110
            },
            "type": "color"
        }], supported)
        self.assertListEqual([{
            "_id": 1,
            "meta": {
                "instock_product_count": 0
            },
            'type': 'color'
        }], unsupported)
    def test_regular(self):
        context_data = MagicMock()
        attribute_product_data = MagicMock()

        target = Target(context_data, attribute_product_data)

        supported, unsupported = target.split_unsupported_entities(
            [
                {"_id": 1, "meta": {"instock_product_count": 0}, "type": "color"},
                {"_id": 2, "meta": {"instock_product_count": 110}, "type": "color"},
            ]
        )

        self.assertListEqual([{"_id": 2, "meta": {"instock_product_count": 110}, "type": "color"}], supported)
        self.assertListEqual([{"_id": 1, "meta": {"instock_product_count": 0}, "type": "color"}], unsupported)
Ejemplo n.º 4
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')