def test_deserialization_with_extra_fields(self):
        """
        Test Pydantic allows deserialization of MarqoIndex with extra fields
        """
        indexes = [
            self.structured_marqo_index(
                name='my_index',
                schema_name='my_index',
                fields=[
                    Field(name='title', type=FieldType.Text)
                ],
                tensor_fields=[],
                marqo_version='2.12.0'
            ),
            self.unstructured_marqo_index(
                name='my_index_2',
                schema_name='my_index_2',
                marqo_version='2.12.0'
            )
        ]

        for index in indexes:
            with self.subTest(index=index):
                index_setting_json = json.loads(index.json())
                index_setting_json["random_field"] = "value"

                try:
                    parsed_index = MarqoIndex.parse_raw(json.dumps(index_setting_json))
                    # assert that the extra field is deserialized
                    self.assertEqual("value", parsed_index.random_field)
                    # assert that the extra field is kept after serialization
                    self.assertTrue("random_field" in parsed_index.json())
                except pydantic.v1.error_wrappers.ValidationError as e:
                    self.fail(f"Pydantic validation failed: {e}")

        Test Pydantic allows deserialization of MarqoIndex with extra fields
        
tests/integ_tests/core/models/test_marqo_index.py