# coding: utf-8

"""
    Metal API

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

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


import unittest

from equinix.services.metalv1.models.invoice_list import InvoiceList

class TestInvoiceList(unittest.TestCase):
    """InvoiceList unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional) -> InvoiceList:
        """Test InvoiceList
            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 `InvoiceList`
        """
        model = InvoiceList()
        if include_optional:
            return InvoiceList(
                href = '',
                invoices = [
                    equinix.services.metalv1.models.invoice.Invoice(
                        amount = 1.337, 
                        balance = 1.337, 
                        created_on = datetime.datetime.strptime('1975-12-30', '%Y-%m-%d').date(), 
                        credit_amount = 1.337, 
                        credits_applied = 1.337, 
                        currency = 'USD', 
                        due_on = datetime.datetime.strptime('1975-12-30', '%Y-%m-%d').date(), 
                        href = '', 
                        id = '', 
                        items = [
                            equinix.services.metalv1.models.line_item.LineItem(
                                adjustments = [
                                    equinix.services.metalv1.models.line_item_adjustment.LineItemAdjustment(
                                        amount = 1.337, 
                                        description = '', 
                                        href = '', )
                                    ], 
                                amount = 1.337, 
                                currency = '', 
                                description = '', 
                                details = '', 
                                end_date = datetime.datetime.strptime('1975-12-30', '%Y-%m-%d').date(), 
                                hostname = '', 
                                href = '', 
                                item_type = '', 
                                location = '', 
                                plan = equinix.services.metalv1.models.plan_id_name.PlanIdName(
                                    href = '', 
                                    id = '', 
                                    name = '', ), 
                                plan_id = '', 
                                project = equinix.services.metalv1.models.project_id_name.ProjectIdName(
                                    href = '', 
                                    id = '', 
                                    name = '', ), 
                                project_id = '', 
                                service_id = '', 
                                start_date = datetime.datetime.strptime('1975-12-30', '%Y-%m-%d').date(), 
                                unit = '', 
                                unit_price = 1.337, )
                            ], 
                        number = '', 
                        project = equinix.services.metalv1.models.project_id_name.ProjectIdName(
                            href = '', 
                            id = '', 
                            name = '', ), 
                        reference_number = '', 
                        status = '', 
                        target_date = datetime.datetime.strptime('1975-12-30', '%Y-%m-%d').date(), )
                    ]
            )
        else:
            return InvoiceList(
        )
        """

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

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