# 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.execution_detail import ExecutionDetail

class TestExecutionDetail(unittest.TestCase):
    """ExecutionDetail unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional) -> ExecutionDetail:
        """Test ExecutionDetail
            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 `ExecutionDetail`
        """
        model = ExecutionDetail()
        if include_optional:
            return ExecutionDetail(
                execution_id = '',
                status = '',
                documents = [
                    None
                    ],
                pagination = mixpeek.models.pagination.Pagination(),
                stage_statistics = mixpeek.models.retriever_execution_statistics.RetrieverExecutionStatistics(
                    stages = {
                        'key' : mixpeek.models.stage_statistics.StageStatistics(
                            input_count = 0.0, 
                            output_count = 0.0, 
                            duration_ms = 0.0, 
                            efficiency = 0.0, 
                            cache_hit = True, 
                            error = '', 
                            llm_calls = 0.0, 
                            tokens_used = 0.0, 
                            metadata = mixpeek.models.metadata.Metadata(), )
                        }, 
                    total_time_ms = 0.0, 
                    credits_used = 0.0, ),
                budget = mixpeek.models.budget.Budget(),
                error = '',
                optimization_applied = True,
                optimization_summary = mixpeek.models.optimization_summary.Optimization Summary(),
                created_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'),
                current_stage = '',
                stages_completed = 0.0,
                total_stages = 0.0
            )
        else:
            return ExecutionDetail(
                execution_id = '',
                status = '',
        )
        """

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

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