# coding: utf-8

"""
    Mozart platform API

    API for interacting with the Mozart platform.  # noqa: E501

    The version of the OpenAPI document: 0.2.0
    Contact: support@bang-olufsen.dk
    Generated by: https://openapi-generator.tech
"""


from __future__ import absolute_import

import unittest
import datetime

import mozart_api
from mozart_api.models.room_compensation_result import (
    RoomCompensationResult,
)  # noqa: E501
from mozart_api.rest import ApiException


class TestRoomCompensationResult(unittest.TestCase):
    """RoomCompensationResult unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional):
        """Test RoomCompensationResult
        include_option is a boolean, when False only required
        params are included, when True both required and
        optional params are included"""
        # model = mozart_api.models.room_compensation_result.RoomCompensationResult()  # noqa: E501
        if include_optional:
            return RoomCompensationResult(
                compensation=[
                    mozart_api.models.room_compensation_response.RoomCompensationResponse(
                        frequency=56,
                        gain=1.337,
                    )
                ],
                measured_response=[
                    mozart_api.models.room_compensation_response.RoomCompensationResponse(
                        frequency=56,
                        gain=1.337,
                    )
                ],
                placement="free",
                reference_response=[
                    mozart_api.models.room_compensation_response.RoomCompensationResponse(
                        frequency=56,
                        gain=1.337,
                    )
                ],
                speaker_group_suggestion=mozart_api.models.speaker_group.SpeakerGroup(
                    crossover_frequency=20,
                    enable_phase_compensation=True,
                    friendly_name="0",
                    id="0",
                    is_deleteable=True,
                    items=[
                        mozart_api.models.speaker_group_member.SpeakerGroupMember(
                            distance=0,
                            friendly_name="0",
                            gain=-24,
                            id="0",
                            location=mozart_api.models.speaker_group_member_location.SpeakerGroupMember_location(
                                x=56,
                                y=56,
                                z=56,
                            ),
                            redirection_level=-100,
                            role="0",
                            type="0",
                        )
                    ],
                    room_compensation_id="0",
                    speaker_preset=0,
                ),
                time_stamp=datetime.datetime.strptime(
                    "2013-10-20 19:20:30.00", "%Y-%m-%d %H:%M:%S.%f"
                ),
            )
        else:
            return RoomCompensationResult()

    def testRoomCompensationResult(self):
        """Test RoomCompensationResult"""
        inst_req_only = self.make_instance(include_optional=False)
        inst_req_and_optional = self.make_instance(include_optional=True)


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