# coding: utf-8

"""
    Vayu API

    The Vayu API is a RESTful API that allows you to submit events for processing and storage & manage billing related entities.           The API is secured using the Bearer Authentication scheme with JWT tokens.           To obtain a JWT token, please contact Vayu at team@withvayu.com

    The version of the OpenAPI document: 1.0.0
    Contact: dev@withvayu.com
    Generated by OpenAPI Generator (https://openapi-generator.tech)

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


import unittest

from openapi.models.product_group import ProductGroup

class TestProductGroup(unittest.TestCase):
    """ProductGroup unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional) -> ProductGroup:
        """Test ProductGroup
            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 `ProductGroup`
        """
        model = ProductGroup()
        if include_optional:
            return ProductGroup(
                display_name = '',
                description = '',
                product_erp_id = '',
                ns_class = '',
                ns_class_id = '',
                products = [
                    openapi.models.product_group_products_inner.ProductGroup_products_inner(
                        display_name = '', 
                        description = '', 
                        scheduling = openapi.models.product_group_products_inner_scheduling.ProductGroup_products_inner_scheduling(
                            billing_day = 1, 
                            duration = openapi.models.product_group_products_inner_scheduling_duration.ProductGroup_products_inner_scheduling_duration(
                                unit = 'MONTH', 
                                value = 0, ), ), 
                        pricing = null, 
                        catalog_product_id = '', 
                        product_erp_id = '', 
                        ns_class = '', 
                        ns_class_id = '', 
                        commitment = openapi.models.product_group_products_inner_commitment.ProductGroup_products_inner_commitment(
                            units = 0, 
                            price = 0, 
                            overage_strategy = 'IGNORE', ), 
                        payment_term = 'Prepayment', 
                        is_calendar_aligned = True, 
                        cloud_provider_settings = openapi.models.product_cloud_provider_settings.ProductCloudProviderSettings(
                            cloud_provider = 'AWS', 
                            cloud_provider_marketplace_id = '', 
                            dimension = '', ), )
                    ],
                base_amount = 1.337,
                commitment = openapi.models.product_group_commitment.ProductGroup_commitment(
                    units = 0, 
                    price = 0, 
                    scheduling = openapi.models.product_group_products_inner_commitment_scheduling.ProductGroup_products_inner_commitment_scheduling(
                        billing_day = 1, 
                        duration = openapi.models.product_group_products_inner_scheduling_duration.ProductGroup_products_inner_scheduling_duration(
                            unit = 'MONTH', 
                            value = 0, ), ), 
                    overage_strategy = 'IGNORE', ),
                is_calendar_aligned = True
            )
        else:
            return ProductGroup(
                display_name = '',
                products = [
                    openapi.models.product_group_products_inner.ProductGroup_products_inner(
                        display_name = '', 
                        description = '', 
                        scheduling = openapi.models.product_group_products_inner_scheduling.ProductGroup_products_inner_scheduling(
                            billing_day = 1, 
                            duration = openapi.models.product_group_products_inner_scheduling_duration.ProductGroup_products_inner_scheduling_duration(
                                unit = 'MONTH', 
                                value = 0, ), ), 
                        pricing = null, 
                        catalog_product_id = '', 
                        product_erp_id = '', 
                        ns_class = '', 
                        ns_class_id = '', 
                        commitment = openapi.models.product_group_products_inner_commitment.ProductGroup_products_inner_commitment(
                            units = 0, 
                            price = 0, 
                            overage_strategy = 'IGNORE', ), 
                        payment_term = 'Prepayment', 
                        is_calendar_aligned = True, 
                        cloud_provider_settings = openapi.models.product_cloud_provider_settings.ProductCloudProviderSettings(
                            cloud_provider = 'AWS', 
                            cloud_provider_marketplace_id = '', 
                            dimension = '', ), )
                    ],
        )
        """

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

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