def test_use_existing_tensors_check_meta_data(self):
        """

        Checks chunk meta data and vectors are as expected

        """
        self.add_documents(config=self.config, add_docs_params=AddDocsParams(
            index_name=self.index_name_1, docs=[
                {
                    "_id": "123",
                    "title 1": "content 1",
                    "modded field": "original content",
                    "non-tensor-field": "content 2. blah blah blah",
                    "field_that_will_disappear": "some stuff",  # this gets dropped during the next add docs call,
                    "field_to_be_list": "some stuff",
                    "fl": 1.51
                }], auto_refresh=True, non_tensor_fields=["non-tensor-field"], device="cpu"))

        use_existing_tensor_doc = {
            "title 1": "content 1",  # this one should keep the same vectors
            "my new field": "cat on mat",  # new vectors because it's a new field
            "modded field": "updated content",  # new vectors because the content is modified
            "non-tensor-field": "content 2. blah blah blah",  # this would should still have no vectors
            "2nd-non-tensor-field": "content 2. blah blah blah",  # this one is explicitly being non-tensorised,
            # should end up in meta data:
            "field_to_be_list": ["hi", "there"],
            "new_field_list": ["some new content"],
            "fl": 101.3,
            "new_bool": False
        }
        self.add_documents(
            config=self.config, add_docs_params=AddDocsParams(
                index_name=self.index_name_1, docs=[{"_id": "123", **use_existing_tensor_doc}],
                auto_refresh=True, non_tensor_fields=["2nd-non-tensor-field", "field_to_be_list", 'new_field_list'],
                use_existing_tensors=True, device="cpu"))

        updated_doc = requests.get(
            url=F"{self.endpoint}/{self.index_name_1}/_doc/123",
            verify=False
        )
        chunks = [chunk for chunk in updated_doc.json()['_source']['__chunks']]
        # each chunk needs its metadata to be the same as the updated document's content
        for ch in chunks:
            ch_meta_data = {k: v for k, v in ch.items() if not k.startswith("__")}
            assert use_existing_tensor_doc == ch_meta_data
        assert len(chunks) == 3

        # check if the vectors/field content is correct
        for vector_field in ["title 1", "my new field", "modded field"]:
            found_vector_field = False
            for ch in chunks:
                if ch["__field_name"] == vector_field:
                    found_vector_field = True
                    assert ch['__field_content'] == use_existing_tensor_doc[vector_field]
                assert isinstance(ch[TensorField.marqo_knn_field], list)
            assert found_vector_field


        Checks chunk meta data and vectors are as expected

        
tests/integ_tests/tensor_search/test_add_documents_use_existing_tensors.py