# coding: utf-8

"""
    Mixpeek API

    This is the Mixpeek API, providing access to various endpoints for data processing and retrieval.

    The version of the OpenAPI document: 0.81.1
    Contact: info@mixpeek.com
    Generated by OpenAPI Generator (https://openapi-generator.tech)

    Do not edit the class manually.
"""  # noqa: E501


import unittest

from mixpeek.models.cluster_metadata import ClusterMetadata

class TestClusterMetadata(unittest.TestCase):
    """ClusterMetadata unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional) -> ClusterMetadata:
        """Test ClusterMetadata
            include_optional is a boolean, when False only required
            params are included, when True both required and
            optional params are included """
        # uncomment below to create an instance of `ClusterMetadata`
        """
        model = ClusterMetadata()
        if include_optional:
            return ClusterMetadata(
                cluster_id = '',
                cluster_name = '',
                namespace_id = '',
                input_collections = [
                    ''
                    ],
                source_bucket_ids = [
                    ''
                    ],
                filters = { },
                cluster_type = 'vector',
                feature_uris = [
                    ''
                    ],
                multi_feature_strategy = '',
                learned_weights = {
                    'key' : 1.337
                    },
                learning_quality_score = 1.337,
                effective_feature_method = '',
                clustered_attributes = [
                    ''
                    ],
                hierarchical_grouping = True,
                aggregation_method = '',
                output_collection_ids = [
                    ''
                    ],
                output_collection_names = [
                    ''
                    ],
                algorithm = '',
                algorithm_params = { },
                enrich_source = True,
                source_enrichment_config = mixpeek.models.source_enrichment_config.SourceEnrichmentConfig(
                    field_mappings = [
                        mixpeek.models.enrichment_field_mapping.EnrichmentFieldMapping(
                            source_field = '', 
                            target_field = '', )
                        ], ),
                llm_labeling = mixpeek.models.llm_labeling.LLMLabeling(
                    enabled = True, 
                    labeling_inputs = mixpeek.models.llm_labeling_input.LLMLabelingInput(
                        input_mappings = [
                            mixpeek.models.input_mapping.InputMapping(
                                input_key = '', 
                                source_type = 'payload', 
                                path = '', 
                                override = null, )
                            ], ), 
                    provider = 'openai', 
                    model_name = null, 
                    include_summary = True, 
                    include_keywords = True, 
                    max_samples_per_cluster = 1, 
                    sample_text_max_length = 50, 
                    use_embedding_dedup = True, 
                    embedding_similarity_threshold = 0.5, 
                    cache_ttl_seconds = 0, 
                    custom_prompt = '', 
                    response_shape = null, 
                    parameters = { }, ),
                num_clusters = 56,
                num_documents_clustered = 56,
                execution_time_seconds = 1.337,
                hierarchy_detected = True,
                parent_cluster_id = '',
                child_cluster_ids = [
                    ''
                    ],
                hierarchy_relationships = [
                    { }
                    ],
                status = 'PENDING',
                last_execution_task_id = '',
                created_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'),
                updated_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'),
                last_executed_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'),
                completed_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'),
                llm_labeling_errors = [
                    ''
                    ],
                metadata = { }
            )
        else:
            return ClusterMetadata(
                cluster_name = '',
                namespace_id = '',
                input_collections = [
                    ''
                    ],
                cluster_type = 'vector',
        )
        """

    def testClusterMetadata(self):
        """Test ClusterMetadata"""
        # inst_req_only = self.make_instance(include_optional=False)
        # inst_req_and_optional = self.make_instance(include_optional=True)

if __name__ == '__main__':
    unittest.main()
