# coding: utf-8

"""
    SmartyMeet Dev03 API REST

    No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)

    The version of the OpenAPI document: 1.0.1
    Contact: developer@smartymeet.com
    Generated by OpenAPI Generator (https://openapi-generator.tech)

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


import unittest

from smartytalent_client.models.create_talent_request_body_data import CreateTalentRequestBodyData

class TestCreateTalentRequestBodyData(unittest.TestCase):
    """CreateTalentRequestBodyData unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional) -> CreateTalentRequestBodyData:
        """Test CreateTalentRequestBodyData
            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 `CreateTalentRequestBodyData`
        """
        model = CreateTalentRequestBodyData()
        if include_optional:
            return CreateTalentRequestBodyData(
                type = 'talents',
                attributes = smartytalent_client.models.talent_attributes_schema.TalentAttributesSchema(
                    status = 'active', 
                    name = '', 
                    email = '', 
                    secondary_email = '', 
                    timestamps = smartytalent_client.models.resource_timestamps_schema.ResourceTimestampsSchema(
                        created = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), 
                        modified = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), ), 
                    work_email = '', 
                    phone = '', 
                    work_phone = '', 
                    profile_picture_url = '', 
                    availability = {
                        'key' : smartytalent_client.models.talent_availability_received_criteria_schema.TalentAvailabilityReceivedCriteriaSchema(
                            name = '', 
                            description = '', 
                            priority = 'low', 
                            priority_confidence = 'low', 
                            priority_reasoning = '', 
                            received = [
                                None
                                ], )
                        }, 
                    desired_contract_length = smartytalent_client.models.talent_attributes_desired_contract_length_schema.TalentAttributesDesiredContractLengthSchema(
                        duration = '', 
                        is_assumed = True, 
                        confidence = 'Low', 
                        flexibility = '', 
                        reasoning = '', ), 
                    employment_type = smartytalent_client.models.talent_attributes_employment_type_schema.TalentAttributesEmploymentTypeSchema(
                        status = '', 
                        is_assumed = True, 
                        confidence = 'Low', 
                        additional_context = '', 
                        reasoning = '', ), 
                    experience_and_seniority = {
                        'key' : smartytalent_client.models.talent_received_criteria_schema.TalentReceivedCriteriaSchema(
                            name = '', 
                            description = '', )
                        }, 
                    break_reason = '', 
                    quick_insights = {
                        'key' : ''
                        }, 
                    languages_spoken = {
                        'key' : smartytalent_client.models.talent_received_criteria_schema.TalentReceivedCriteriaSchema(
                            name = '', 
                            description = '', )
                        }, 
                    social_links = [
                        smartytalent_client.models.talent_attributes_social_link_schema.TalentAttributesSocialLinkSchema(
                            platform = '', 
                            url = '', )
                        ], 
                    desired_employment_type = [
                        smartytalent_client.models.talent_attributes_desired_employment_type_schema.TalentAttributesDesiredEmploymentTypeSchema(
                            type = '', 
                            is_assumed = True, 
                            confidence = 'Low', 
                            reasoning = '', )
                        ], 
                    desired_role = [
                        smartytalent_client.models.talent_attributes_desired_role_schema.TalentAttributesDesiredRoleSchema(
                            role = '', 
                            level = '', 
                            is_assumed = True, 
                            confidence = 'Low', 
                            reasoning = '', )
                        ], 
                    work_preferences = {
                        'key' : 
                        }, 
                    location_preferences = {
                        'key' : 
                        }, 
                    work_authorization = {
                        'key' : 
                        }, 
                    skills_and_expertise = {
                        'key' : 
                        }, 
                    certifications = {
                        'key' : 
                        }, 
                    licenses = {
                        'key' : 
                        }, 
                    professional_experience = {
                        'key' : 
                        }, 
                    industry_experience = {
                        'key' : 
                        }, 
                    company_type_experience = {
                        'key' : 
                        }, 
                    job_positions = {
                        'key' : 
                        }, 
                    job_tendencies = {
                        'key' : 
                        }, 
                    education = {
                        'key' : 
                        }, 
                    projects_and_achievements = {
                        'key' : 
                        }, 
                    personality_and_soft_skills = {
                        'key' : 
                        }, 
                    hobbies_and_interests = {
                        'key' : [
                            ''
                            ]
                        }, 
                    references = {
                        'key' : 
                        }, 
                    keywords = {
                        'key' : [
                            ''
                            ]
                        }, 
                    performance_reviews = [
                        None
                        ], 
                    personality_tests = { }, 
                    salary_expectation = {
                        'key' : 
                        }, 
                    relocation_willingness = True, 
                    requires_sponsorship = True, 
                    career_break = True, 
                    is_talent_pool = True, 
                    ttl = '', 
                    alumni = smartytalent_client.models.talent_alumni_schema.TalentAlumniSchema(
                        is_former_employee = True, 
                        previous_tenure_months = 1.337, 
                        wants_to_return = True, ), 
                    referral = smartytalent_client.models.talent_referral_schema.TalentReferralSchema(
                        is_referred = True, 
                        referral_code = '', 
                        referrer = smartytalent_client.models.talent_referral_schema_referrer.TalentReferralSchema_referrer(
                            email = '', 
                            full_name = '', ), ), 
                    age = '', 
                    gender = '', 
                    settings = { }, 
                    short_code = '', 
                    source = '', ),
                relationships = smartytalent_client.models.talent_relationships_schema.TalentRelationshipsSchema(
                    candidates = smartytalent_client.models.talent_relationships_candidates_schema.TalentRelationshipsCandidatesSchema(
                        data = [
                            smartytalent_client.models.talent_relationships_candidates_data_schema.TalentRelationshipsCandidatesDataSchema(
                                type = 'candidates', 
                                id = '655cde5c9931802df628f3d2de8ca681-2', )
                            ], ), 
                    files = smartytalent_client.models.talent_relationships_files_schema.TalentRelationshipsFilesSchema(), 
                    translations = smartytalent_client.models.talent_relationships_translations_schema.TalentRelationshipsTranslationsSchema(), 
                    operations = smartytalent_client.models.talent_relationships_operations_schema.TalentRelationshipsOperationsSchema(), )
            )
        else:
            return CreateTalentRequestBodyData(
                type = 'talents',
                attributes = smartytalent_client.models.talent_attributes_schema.TalentAttributesSchema(
                    status = 'active', 
                    name = '', 
                    email = '', 
                    secondary_email = '', 
                    timestamps = smartytalent_client.models.resource_timestamps_schema.ResourceTimestampsSchema(
                        created = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), 
                        modified = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), ), 
                    work_email = '', 
                    phone = '', 
                    work_phone = '', 
                    profile_picture_url = '', 
                    availability = {
                        'key' : smartytalent_client.models.talent_availability_received_criteria_schema.TalentAvailabilityReceivedCriteriaSchema(
                            name = '', 
                            description = '', 
                            priority = 'low', 
                            priority_confidence = 'low', 
                            priority_reasoning = '', 
                            received = [
                                None
                                ], )
                        }, 
                    desired_contract_length = smartytalent_client.models.talent_attributes_desired_contract_length_schema.TalentAttributesDesiredContractLengthSchema(
                        duration = '', 
                        is_assumed = True, 
                        confidence = 'Low', 
                        flexibility = '', 
                        reasoning = '', ), 
                    employment_type = smartytalent_client.models.talent_attributes_employment_type_schema.TalentAttributesEmploymentTypeSchema(
                        status = '', 
                        is_assumed = True, 
                        confidence = 'Low', 
                        additional_context = '', 
                        reasoning = '', ), 
                    experience_and_seniority = {
                        'key' : smartytalent_client.models.talent_received_criteria_schema.TalentReceivedCriteriaSchema(
                            name = '', 
                            description = '', )
                        }, 
                    break_reason = '', 
                    quick_insights = {
                        'key' : ''
                        }, 
                    languages_spoken = {
                        'key' : smartytalent_client.models.talent_received_criteria_schema.TalentReceivedCriteriaSchema(
                            name = '', 
                            description = '', )
                        }, 
                    social_links = [
                        smartytalent_client.models.talent_attributes_social_link_schema.TalentAttributesSocialLinkSchema(
                            platform = '', 
                            url = '', )
                        ], 
                    desired_employment_type = [
                        smartytalent_client.models.talent_attributes_desired_employment_type_schema.TalentAttributesDesiredEmploymentTypeSchema(
                            type = '', 
                            is_assumed = True, 
                            confidence = 'Low', 
                            reasoning = '', )
                        ], 
                    desired_role = [
                        smartytalent_client.models.talent_attributes_desired_role_schema.TalentAttributesDesiredRoleSchema(
                            role = '', 
                            level = '', 
                            is_assumed = True, 
                            confidence = 'Low', 
                            reasoning = '', )
                        ], 
                    work_preferences = {
                        'key' : 
                        }, 
                    location_preferences = {
                        'key' : 
                        }, 
                    work_authorization = {
                        'key' : 
                        }, 
                    skills_and_expertise = {
                        'key' : 
                        }, 
                    certifications = {
                        'key' : 
                        }, 
                    licenses = {
                        'key' : 
                        }, 
                    professional_experience = {
                        'key' : 
                        }, 
                    industry_experience = {
                        'key' : 
                        }, 
                    company_type_experience = {
                        'key' : 
                        }, 
                    job_positions = {
                        'key' : 
                        }, 
                    job_tendencies = {
                        'key' : 
                        }, 
                    education = {
                        'key' : 
                        }, 
                    projects_and_achievements = {
                        'key' : 
                        }, 
                    personality_and_soft_skills = {
                        'key' : 
                        }, 
                    hobbies_and_interests = {
                        'key' : [
                            ''
                            ]
                        }, 
                    references = {
                        'key' : 
                        }, 
                    keywords = {
                        'key' : [
                            ''
                            ]
                        }, 
                    performance_reviews = [
                        None
                        ], 
                    personality_tests = { }, 
                    salary_expectation = {
                        'key' : 
                        }, 
                    relocation_willingness = True, 
                    requires_sponsorship = True, 
                    career_break = True, 
                    is_talent_pool = True, 
                    ttl = '', 
                    alumni = smartytalent_client.models.talent_alumni_schema.TalentAlumniSchema(
                        is_former_employee = True, 
                        previous_tenure_months = 1.337, 
                        wants_to_return = True, ), 
                    referral = smartytalent_client.models.talent_referral_schema.TalentReferralSchema(
                        is_referred = True, 
                        referral_code = '', 
                        referrer = smartytalent_client.models.talent_referral_schema_referrer.TalentReferralSchema_referrer(
                            email = '', 
                            full_name = '', ), ), 
                    age = '', 
                    gender = '', 
                    settings = { }, 
                    short_code = '', 
                    source = '', ),
        )
        """

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

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