# coding: utf-8

"""
    Zarban Wallet API

    API for Zarban wallet services.  # noqa: E501

    The version of the OpenAPI document: 2.0.0
    Contact: info@zarban.io
    Generated by: https://openapi-generator.tech
"""


from __future__ import absolute_import

import unittest
import datetime

import zarban.wallet.openapi_client
from zarban.wallet.openapi_client.models.profile_response import ProfileResponse  # noqa: E501
from zarban.wallet.openapi_client.rest import ApiException

class TestProfileResponse(unittest.TestCase):
    """ProfileResponse unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional):
        """Test ProfileResponse
            include_option is a boolean, when False only required
            params are included, when True both required and
            optional params are included """
        # model = zarban.wallet.openapi_client.models.profile_response.ProfileResponse()  # noqa: E501
        if include_optional :
            return ProfileResponse(
                referral = zarban.wallet.openapi_client.models.referral.Referral(
                    id = 56, 
                    referrer_id = 56, 
                    name = '0', 
                    usage_limit = 56, 
                    usage_count = 56, 
                    created_at = zarban.wallet.openapi_client.models.timestamp.Timestamp(
                        jalaali = '1399-01-01T00:00:00Z', 
                        gregorian = '2020-01-01T00:00:00Z', ), 
                    link = 'https://t.me/zarbanwalletbot?start=referral-29', 
                    share_url = 'https://t.me/zarbanwalletbot?start=referral-29', ), 
                points = 56, 
                user = zarban.wallet.openapi_client.models.user.User(
                    first_name = 'John', 
                    last_name = 'Doe', 
                    email = '0', 
                    username = '0', 
                    phone = '0', 
                    is_email_verified = True, 
                    is_phone_verified = True, 
                    is_kyc_verified = True, 
                    is_child = True, 
                    is_super_user = True, 
                    is_admin = True, 
                    telegram = zarban.wallet.openapi_client.models.telegram_profile.TelegramProfile(
                        username = '0', 
                        first_name = '0', 
                        last_name = '0', 
                        photo_url = '0', ), ), 
                bank_info = [
                    zarban.wallet.openapi_client.models.bank_info.BankInfo(
                        bank_name = 'Bank Melli', 
                        card_number = '1234567890', 
                        iban = 'IR1234567890', )
                    ]
            )
        else :
            return ProfileResponse(
                referral = zarban.wallet.openapi_client.models.referral.Referral(
                    id = 56, 
                    referrer_id = 56, 
                    name = '0', 
                    usage_limit = 56, 
                    usage_count = 56, 
                    created_at = zarban.wallet.openapi_client.models.timestamp.Timestamp(
                        jalaali = '1399-01-01T00:00:00Z', 
                        gregorian = '2020-01-01T00:00:00Z', ), 
                    link = 'https://t.me/zarbanwalletbot?start=referral-29', 
                    share_url = 'https://t.me/zarbanwalletbot?start=referral-29', ),
                points = 56,
                user = zarban.wallet.openapi_client.models.user.User(
                    first_name = 'John', 
                    last_name = 'Doe', 
                    email = '0', 
                    username = '0', 
                    phone = '0', 
                    is_email_verified = True, 
                    is_phone_verified = True, 
                    is_kyc_verified = True, 
                    is_child = True, 
                    is_super_user = True, 
                    is_admin = True, 
                    telegram = zarban.wallet.openapi_client.models.telegram_profile.TelegramProfile(
                        username = '0', 
                        first_name = '0', 
                        last_name = '0', 
                        photo_url = '0', ), ),
                bank_info = [
                    zarban.wallet.openapi_client.models.bank_info.BankInfo(
                        bank_name = 'Bank Melli', 
                        card_number = '1234567890', 
                        iban = 'IR1234567890', )
                    ],
        )

    def testProfileResponse(self):
        """Test ProfileResponse"""
        inst_req_only = self.make_instance(include_optional=False)
        inst_req_and_optional = self.make_instance(include_optional=True)


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