# 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: 1.3.0
    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.batch_diagnostics import BatchDiagnostics

class TestBatchDiagnostics(unittest.TestCase):
    """BatchDiagnostics unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional) -> BatchDiagnostics:
        """Test BatchDiagnostics
            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 `BatchDiagnostics`
        """
        model = BatchDiagnostics()
        if include_optional:
            return BatchDiagnostics(
                batch_id = '',
                batch_name = '',
                status = '',
                bucket_id = '',
                current_tier = 56,
                total_tiers = 56,
                overall_progress = 1.337,
                created_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'),
                submitted_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'),
                started_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'),
                duration_seconds = 1.337,
                estimated_completion = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'),
                tiers = [
                    mixpeek.models.tier_diagnostic.TierDiagnostic(
                        tier_num = 56, 
                        task_id = '', 
                        status = '', 
                        started_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'), 
                        duration_seconds = 1.337, 
                        progress = mixpeek.models.task_progress.TaskProgress(
                            processed_documents = 56, 
                            total_documents = 56, 
                            percentage = 1.337, ), 
                        ray_job_id = '', 
                        ray_dashboard_url = '', 
                        error = '', 
                        error_type = '', )
                    ],
                collections = [
                    mixpeek.models.collection_diagnostic.CollectionDiagnostic(
                        collection_id = '', 
                        collection_name = '', 
                        document_count = 56, 
                        expected_documents = 56, 
                        status = '', )
                    ],
                performance_summary = mixpeek.models.performance_summary.Performance Summary(),
                insights = [
                    mixpeek.models.performance_insight.PerformanceInsight(
                        type = '', 
                        severity = '', 
                        message = '', 
                        stage = '', 
                        metric_value = 1.337, 
                        recommendation = '', )
                    ],
                has_failures = True,
                failed_tier_count = 56,
                total_objects = 56,
                next_actions = [
                    ''
                    ]
            )
        else:
            return BatchDiagnostics(
                batch_id = '',
                batch_name = '',
                status = '',
                bucket_id = '',
        )
        """

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

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