# coding: utf-8

"""
    Carrier API

    **Seaplane Global Messaging Service**  For information about authentication see [authentication](/docs/authentication)   # noqa: E501

    The version of the OpenAPI document: 1.1.0-beta
    Contact: support@seaplane.io
    Generated by OpenAPI Generator (https://openapi-generator.tech)

    Do not edit the class manually.
"""


import unittest
import datetime

import seaplane.gen.carrier
from seaplane.gen.carrier.models.input import Input  # noqa: E501
from seaplane.gen.carrier.rest import ApiException


class TestInput(unittest.TestCase):
    """Input unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional):
        """Test Input
        include_option 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 `Input`
        """
        model = seaplane.gen.carrier.models.input.Input()  # noqa: E501
        if include_optional :
            return Input(
                carrier = seaplane.gen.carrier.models.carrier_input_config.CarrierInputConfig(
                    stream = 'example-stream', 
                    subject = 'example-stream.subject1 example-stream.subject2', 
                    queue = 'example-queue-group', 
                    durable = 'example-consumer', 
                    bind = False, 
                    deliver = 'all', 
                    ack_wait = '30s', 
                    max_ack_pending = 1024, ), 
                http_server = seaplane.gen.carrier.models.http_server_config.HTTPServerConfig(
                    address = '', 
                    path = '/', 
                    ws_path = '/post/ws', 
                    ws_welcome_message = '', 
                    ws_rate_limit_message = '', 
                    allowed_verbs = ["POST"], 
                    timeout = '5s', 
                    rate_limit = '', 
                    cert_file = '', 
                    key_file = '', 
                    cors = seaplane.gen.carrier.models.cors.Cors(
                        enabled = False, 
                        allowed_origins = [
                            'example.com'
                            ], ), ), 
                broker = [
                    seaplane.gen.carrier.models.broker_item.BrokerItem(
                        carrier = seaplane.gen.carrier.models.carrier_input_config.CarrierInputConfig(
                            stream = 'example-stream', 
                            subject = 'example-stream.subject1 example-stream.subject2', 
                            queue = 'example-queue-group', 
                            durable = 'example-consumer', 
                            bind = False, 
                            deliver = 'all', 
                            ack_wait = '30s', 
                            max_ack_pending = 1024, ), 
                        http_server = seaplane.gen.carrier.models.http_server_config.HTTPServerConfig(
                            address = '', 
                            path = '/', 
                            ws_path = '/post/ws', 
                            ws_welcome_message = '', 
                            ws_rate_limit_message = '', 
                            allowed_verbs = ["POST"], 
                            timeout = '5s', 
                            rate_limit = '', 
                            cert_file = '', 
                            key_file = '', 
                            cors = seaplane.gen.carrier.models.cors.Cors(
                                enabled = False, 
                                allowed_origins = [
                                    'example.com'
                                    ], ), ), )
                    ]
            )
        else :
            return Input(
        )
        """

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


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