# 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.benchmark_result import BenchmarkResult

class TestBenchmarkResult(unittest.TestCase):
    """BenchmarkResult unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional) -> BenchmarkResult:
        """Test BenchmarkResult
            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 `BenchmarkResult`
        """
        model = BenchmarkResult()
        if include_optional:
            return BenchmarkResult(
                retriever_id = '',
                retriever_name = '',
                pipeline_hash = '',
                metrics = mixpeek.models.alignment_metrics.AlignmentMetrics(
                    ndcg_at_k = {
                        'key' : 1.337
                        }, 
                    mean_rank_clicked = 1.337, 
                    mean_rank_purchased = 1.337, 
                    recall_at_k = {
                        'key' : 1.337
                        }, 
                    avg_position_delta = 1.337, 
                    items_promoted = 0.0, 
                    items_demoted = 0.0, 
                    sessions_improved = 0.0, 
                    sessions_degraded = 0.0, 
                    sessions_neutral = 0.0, ),
                taxonomy_deltas = {
                    'key' : mixpeek.models.alignment_metrics.AlignmentMetrics(
                        ndcg_at_k = {
                            'key' : 1.337
                            }, 
                        mean_rank_clicked = 1.337, 
                        mean_rank_purchased = 1.337, 
                        recall_at_k = {
                            'key' : 1.337
                            }, 
                        avg_position_delta = 1.337, 
                        items_promoted = 0.0, 
                        items_demoted = 0.0, 
                        sessions_improved = 0.0, 
                        sessions_degraded = 0.0, 
                        sessions_neutral = 0.0, )
                    },
                latency = mixpeek.models.latency_metrics.LatencyMetrics(
                    p50_ms = 0.0, 
                    p90_ms = 0.0, 
                    p99_ms = 0.0, 
                    mean_ms = 0.0, 
                    stage_latencies = {
                        'key' : 1.337
                        }, ),
                failed_sessions = 0.0,
                error_summary = {
                    'key' : 56
                    }
            )
        else:
            return BenchmarkResult(
                retriever_id = '',
                retriever_name = '',
                pipeline_hash = '',
                metrics = mixpeek.models.alignment_metrics.AlignmentMetrics(
                    ndcg_at_k = {
                        'key' : 1.337
                        }, 
                    mean_rank_clicked = 1.337, 
                    mean_rank_purchased = 1.337, 
                    recall_at_k = {
                        'key' : 1.337
                        }, 
                    avg_position_delta = 1.337, 
                    items_promoted = 0.0, 
                    items_demoted = 0.0, 
                    sessions_improved = 0.0, 
                    sessions_degraded = 0.0, 
                    sessions_neutral = 0.0, ),
                latency = mixpeek.models.latency_metrics.LatencyMetrics(
                    p50_ms = 0.0, 
                    p90_ms = 0.0, 
                    p99_ms = 0.0, 
                    mean_ms = 0.0, 
                    stage_latencies = {
                        'key' : 1.337
                        }, ),
                failed_sessions = 0.0,
        )
        """

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

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