def test_create_index_with_invalid_model_properties(self):
        """Test to ensure an invalid model properties will block index creation."""
        try:
            self.index_management.delete_index_by_name("test_create_index_with_invalid_model_name_or_properties")
        except IndexNotFoundError:
            pass

        # Test that creating an index with an invalid model name or properties raises an error
        test_cases = [
            ("no_model", {"dimensions": 0, "type": "no_model"}, "invalid dimensions value, can't be 0"),
            ("no_model", {"dimensions": -123, "type": "no_model"}, "invalid dimensions value, can't be negative"),
            ("no_model", {"dimensions": 213.213, "type": "no_model"}, "invalid dimensions value, can't be float"),
            ("no_model", {"dimensions": "512", "type": "no_model"}, "invalid dimensions value, can't be string"),
            ("no_model", {"dimensions": 234, "type": "No_model"}, "invalid model type, should be 'no_model'"),
            ("no_model", None, "no model properties provided"),
            ("no_model", {"type": "no_model"}, "dimension not provided"),
            ("my_model", {"dimensions": 512, "type": "no_model"}, "invalid model name"),
            ("no_model", {"dimensions": 512, "type": "open_clip"}, "invalid model properties type")
        ]

        for name, model_properties, msg in test_cases:
            for index_type in ["structured", "unstructured"]:
                with self.subTest(name=name, model_properties=model_properties, msg=f"{index_type} - msg"):
                    with self.assertRaises((ValidationError, InvalidArgumentError)) as e:
                        if index_type == "structured":
                            self.index_management.create_index(
                                self.structured_marqo_index_request(
                                    name="test_create_index_with_invalid_model_name_or_properties",
                                    model=Model(name=name, properties=model_properties, custom=True),
                                    fields=[FieldRequest(name="text_field_1", type=FieldType.Text)],
                                    tensor_fields=["text_field_1"]
                                )
                            )
                        else:
                            self.index_management.create_index(
                                self.unstructured_marqo_index_request(
                                    name="test_create_index_with_invalid_model_name_or_properties",
                                    model=Model(name=name, properties=model_properties, custom=True)
                                )
                        )
                    self.assertIn("Invalid model properties", str(e.exception))
Test to ensure an invalid model properties will block index creation.
tests/integ_tests/tensor_search/integ_tests/test_no_model.py