# coding: utf-8

"""
    Equinix Fabric API v4

    Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to: </br> 1. Cloud Service Providers - Clouds, network and other service providers.  </br> 2. Enterprises - Other Equinix customers, vendors and partners.  </br> 3. Myself - Another customer instance deployed at Equinix. </br> </br> <b>Integrations (SDKs, Tools) links:</b> </br> <a href=\"https://deploy.equinix.com/labs/fabric-java\\\">Fabric Java SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/equinix-sdk-go\\\">Fabric Go SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/equinix-sdk-python\\\">Fabric Python SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/terraform-provider-equinix\\\">Equinix Terraform Provider</a> </br> <a href=\"https://deploy.equinix.com/labs/terraform-equinix-fabric\\\">Fabric Terraform Modules</a> </br> <a href=\"https://deploy.equinix.com/labs/pulumi-provider-equinix/\">Equinix Pulumi Provider</a> </br>

    The version of the OpenAPI document: 4.18
    Generated by OpenAPI Generator (https://openapi-generator.tech)

    Do not edit the class manually.
"""  # noqa: E501


import unittest

from equinix.services.fabricv4.models.stream_subscription_post_request import StreamSubscriptionPostRequest

class TestStreamSubscriptionPostRequest(unittest.TestCase):
    """StreamSubscriptionPostRequest unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional) -> StreamSubscriptionPostRequest:
        """Test StreamSubscriptionPostRequest
            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 `StreamSubscriptionPostRequest`
        """
        model = StreamSubscriptionPostRequest()
        if include_optional:
            return StreamSubscriptionPostRequest(
                type = 'STREAM_SUBSCRIPTION',
                name = '',
                description = '',
                project = equinix.services.fabricv4.models.project.Project(
                    project_id = '44f4c4f8-2f39-494e-838c-d8e640591be5', ),
                enabled = True,
                stream = equinix.services.fabricv4.models.stream_target.StreamTarget(
                    uuid = '657400f8-d360-11e9-bb65-2a2ae2dbcce5', ),
                filters = equinix.services.fabricv4.models.stream_subscription_filter.StreamSubscriptionFilter(
                    and = [
                        equinix.services.fabricv4.models.stream_filter.StreamFilter()
                        ], ),
                metric_selector = equinix.services.fabricv4.models.stream_subscription_selector.StreamSubscriptionSelector(
                    include = [
                        'equinix.fabric.connection.*'
                        ], 
                    except = [
                        'equinix.fabric.connection.*'
                        ], ),
                event_selector = equinix.services.fabricv4.models.stream_subscription_selector.StreamSubscriptionSelector(
                    include = [
                        'equinix.fabric.connection.*'
                        ], 
                    except = [
                        'equinix.fabric.connection.*'
                        ], ),
                sink = equinix.services.fabricv4.models.stream_subscription_sink.StreamSubscriptionSink(
                    uri = '', 
                    type = 'DATADOG', 
                    batch_enabled = False, 
                    batch_size_max = 56, 
                    batch_wait_time_max = 56, 
                    credential = equinix.services.fabricv4.models.stream_subscription_sink_credential.StreamSubscriptionSinkCredential(
                        access_token = '', 
                        integration_key = '', 
                        api_key = '', ), 
                    settings = equinix.services.fabricv4.models.stream_subscription_sink_setting.StreamSubscriptionSinkSetting(
                        event_index = '', 
                        metric_index = '', 
                        source = '', 
                        application_key = '', ), )
            )
        else:
            return StreamSubscriptionPostRequest(
        )
        """

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

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