def test_use_existing_tensor_multimodal_no_change(self):
        """
        Checks that the vectors are not updated if the content is the same for multimodal fields
        """
        doc = {
            "text_field_1": "content 1",
            "text_field_2": "content 2",
            "_id": "1"
        }

        from marqo.s2_inference import s2_inference
        original_vectorise = s2_inference.vectorise

        for index_name in [self.structured_index_multimodal, self.unstructured_index]:
            tensor_fields = None if index_name == self.structured_index_multimodal else ["multimodal_field"]
            mappings = None if index_name == self.structured_index else \
                {
                    "multimodal_field": {"type": "multimodal_combination", "weights": {
                        "text_field_1": 0.5, "text_field_2": 0.8}}
                }
            with self.subTest(f"{index_name}"):
                with mock.patch.object(s2_inference,
                                       'vectorise',
                                       side_effect=original_vectorise) as mock_vectorise:
                    self.add_documents(
                        config=self.config,
                        add_docs_params=AddDocsParams(
                            index_name=index_name,
                            docs=[doc],
                            tensor_fields=tensor_fields,
                            mappings=mappings
                        )
                    )

                    self.assertEqual(1, mock_vectorise.call_count, 'vectorise should be called once')

                with mock.patch.object(s2_inference,
                                       'vectorise',
                                       side_effect=original_vectorise) as mock_vectorise:
                    self.add_documents(
                        config=self.config,
                        add_docs_params=AddDocsParams(
                            index_name=index_name,
                            docs=[doc],
                            tensor_fields=tensor_fields,
                            mappings=mappings,
                            use_existing_tensors=True
                        )
                    )

                    self.assertEqual(0, mock_vectorise.call_count, 'vectorise should not be called')

                    search_res = tensor_search.search(config=self.config, index_name=index_name, text="content")
                    get_doc_res = tensor_search.get_document_by_id(config=self.config, index_name=index_name,
                                                                   document_id="1", show_vectors=True)

                    self.assertEqual("content 1", search_res["hits"][0]["text_field_1"])
                    self.assertEqual("content 2", search_res["hits"][0]["text_field_2"])
                    self.assertEqual(1, len(get_doc_res["_tensor_facets"]))
                    self.assertEqual('{"text_field_1": "content 1", "text_field_2": "content 2"}',
                                     get_doc_res["_tensor_facets"][0]["multimodal_field"])

        Checks that the vectors are not updated if the content is the same for multimodal fields
        
tests/integ_tests/tensor_search/test_add_documents_use_existing_tensors.py