# 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.update_job_request_body import UpdateJobRequestBody

class TestUpdateJobRequestBody(unittest.TestCase):
    """UpdateJobRequestBody unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional) -> UpdateJobRequestBody:
        """Test UpdateJobRequestBody
            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 `UpdateJobRequestBody`
        """
        model = UpdateJobRequestBody()
        if include_optional:
            return UpdateJobRequestBody(
                data = smartytalent_client.models.update_job_request_body_data.UpdateJobRequestBodyData(
                    type = 'jobs', 
                    id = '', 
                    attributes = smartytalent_client.models.job_attributes_schema.JobAttributesSchema(
                        title = {"en-US":"Senior Software Engineer","pl-PL":"Starszy Inżynier Oprogramowania"}, 
                        description = {"en-US":"We are seeking a senior engineer...","pl-PL":"Szukamy starszego inżyniera..."}, 
                        short_code = '', 
                        source = '', 
                        language_code = 'en-US', 
                        status = 'active', 
                        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'), ), 
                        department = {"en-US":"Engineering","pl-PL":"Inżynieria"}, 
                        specialization = {"en-US":"General Legal Practice","pl-PL":"Ogólna praktyka prawnicza"}, 
                        company_culture = '', 
                        seniority = '', 
                        availability = {
                            'key' : smartytalent_client.models.job_criteria_schema.JobCriteriaSchema(
                                name = '', 
                                description = '', 
                                priority = 'low', 
                                priority_confidence = 'low', 
                                priority_reasoning = '', 
                                comparison_rule = '', 
                                expected = [
                                    None
                                    ], )
                            }, 
                        responsibilities = {"en-US":["Lead and mentor a team","Drive development of solutions"],"pl-PL":["Kierowanie i mentorowanie zespołu","Napędzanie rozwoju rozwiązań"]}, 
                        skills_and_expertise = {
                            'key' : smartytalent_client.models.job_criteria_schema.JobCriteriaSchema(
                                name = '', 
                                description = '', 
                                priority = 'low', 
                                priority_confidence = 'low', 
                                priority_reasoning = '', 
                                comparison_rule = '', )
                            }, 
                        languages_spoken = {
                            'key' : 
                            }, 
                        work_preferences = {
                            'key' : 
                            }, 
                        location_preferences = {
                            'key' : 
                            }, 
                        industry_experience = {
                            'key' : 
                            }, 
                        company_type_experience = {
                            'key' : 
                            }, 
                        job_positions = {
                            'key' : 
                            }, 
                        job_tendencies = {
                            'key' : 
                            }, 
                        keywords = {"en-US":["Python","React","AWS"],"pl-PL":["Python","React","AWS"]}, 
                        work_authorization = {
                            'key' : 
                            }, 
                        certifications = {
                            'key' : 
                            }, 
                        licenses = {
                            'key' : 
                            }, 
                        personality_and_soft_skills = {
                            'key' : 
                            }, 
                        education = {
                            'key' : 
                            }, 
                        experience_and_seniority = {
                            'key' : 
                            }, 
                        benefits = {"en-US":["Private health insurance","Flexible work options"],"pl-PL":["Prywatne ubezpieczenie zdrowotne","Elastyczne opcje pracy"]}, 
                        salary_expectation = {
                            'key' : 
                            }, 
                        locations = {"en-US":[{"city":"Warsaw","country":"Poland","region":"Masovian"}],"pl-PL":[{"city":"Warszawa","country":"Polska","region":"Mazowieckie"}]}, 
                        sites = {"en-US":[{"siteType":"office"},{"siteType":"hybrid"}],"pl-PL":[{"siteType":"biuro"},{"siteType":"hybrydowy"}]}, 
                        organization = smartytalent_client.models.job_attributes_organization_schema.JobAttributesOrganizationSchema(
                            name = '', 
                            address = smartytalent_client.models.job_attributes_organization_address_schema.JobAttributesOrganizationAddressSchema(
                                city = '', 
                                country = '', 
                                county = '', 
                                postalcode = '', 
                                street = '', ), ), 
                        settings = smartytalent_client.models.job_attributes_settings_schema.JobAttributesSettingsSchema(
                            conversation = smartytalent_client.models.job_attributes_settings_conversation_schema.JobAttributesSettingsConversationSchema(
                                email = smartytalent_client.models.job_attributes_settings_conversation_email_schema.JobAttributesSettingsConversationEmailSchema(
                                    contact = smartytalent_client.models.job_attributes_settings_conversation_email_contact_schema.JobAttributesSettingsConversationEmailContactSchema(
                                        cc = [
                                            ''
                                            ], 
                                        bcc = [
                                            ''
                                            ], ), 
                                    delays = smartytalent_client.models.job_attributes_settings_conversation_email_delays_schema.JobAttributesSettingsConversationEmailDelaysSchema(
                                        initial = '', ), 
                                    external_sender = True, 
                                    is_sendable = True, ), 
                                candidate_interview = smartytalent_client.models.job_attributes_settings_conversation_candidate_interview_schema.JobAttributesSettingsConversationCandidateInterviewSchema(
                                    enabled = True, 
                                    questions = True, ), 
                                persona_interview = smartytalent_client.models.job_attributes_settings_conversation_persona_interview_schema.JobAttributesSettingsConversationPersonaInterviewSchema(
                                    enabled = True, ), 
                                tone = '', ), 
                            criterias = smartytalent_client.models.job_attributes_settings_criterias_schema.JobAttributesSettingsCriteriasSchema(
                                weight = '', 
                                mandatory_criteria_rejection_rating = '', 
                                mandatory_criteria_satisfy_rating = '', ), 
                            operation = smartytalent_client.models.job_attributes_settings_operation_schema.JobAttributesSettingsOperationSchema(
                                change_stage = True, 
                                create_conversation_report = True, 
                                create_note = True, 
                                create_rate = True, 
                                create_tag = True, ), 
                            persona = smartytalent_client.models.job_attributes_settings_persona_schema.JobAttributesSettingsPersonaSchema(
                                weight = '', ), 
                            rating_restrictiveness = '', ), ), )
            )
        else:
            return UpdateJobRequestBody(
                data = smartytalent_client.models.update_job_request_body_data.UpdateJobRequestBodyData(
                    type = 'jobs', 
                    id = '', 
                    attributes = smartytalent_client.models.job_attributes_schema.JobAttributesSchema(
                        title = {"en-US":"Senior Software Engineer","pl-PL":"Starszy Inżynier Oprogramowania"}, 
                        description = {"en-US":"We are seeking a senior engineer...","pl-PL":"Szukamy starszego inżyniera..."}, 
                        short_code = '', 
                        source = '', 
                        language_code = 'en-US', 
                        status = 'active', 
                        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'), ), 
                        department = {"en-US":"Engineering","pl-PL":"Inżynieria"}, 
                        specialization = {"en-US":"General Legal Practice","pl-PL":"Ogólna praktyka prawnicza"}, 
                        company_culture = '', 
                        seniority = '', 
                        availability = {
                            'key' : smartytalent_client.models.job_criteria_schema.JobCriteriaSchema(
                                name = '', 
                                description = '', 
                                priority = 'low', 
                                priority_confidence = 'low', 
                                priority_reasoning = '', 
                                comparison_rule = '', 
                                expected = [
                                    None
                                    ], )
                            }, 
                        responsibilities = {"en-US":["Lead and mentor a team","Drive development of solutions"],"pl-PL":["Kierowanie i mentorowanie zespołu","Napędzanie rozwoju rozwiązań"]}, 
                        skills_and_expertise = {
                            'key' : smartytalent_client.models.job_criteria_schema.JobCriteriaSchema(
                                name = '', 
                                description = '', 
                                priority = 'low', 
                                priority_confidence = 'low', 
                                priority_reasoning = '', 
                                comparison_rule = '', )
                            }, 
                        languages_spoken = {
                            'key' : 
                            }, 
                        work_preferences = {
                            'key' : 
                            }, 
                        location_preferences = {
                            'key' : 
                            }, 
                        industry_experience = {
                            'key' : 
                            }, 
                        company_type_experience = {
                            'key' : 
                            }, 
                        job_positions = {
                            'key' : 
                            }, 
                        job_tendencies = {
                            'key' : 
                            }, 
                        keywords = {"en-US":["Python","React","AWS"],"pl-PL":["Python","React","AWS"]}, 
                        work_authorization = {
                            'key' : 
                            }, 
                        certifications = {
                            'key' : 
                            }, 
                        licenses = {
                            'key' : 
                            }, 
                        personality_and_soft_skills = {
                            'key' : 
                            }, 
                        education = {
                            'key' : 
                            }, 
                        experience_and_seniority = {
                            'key' : 
                            }, 
                        benefits = {"en-US":["Private health insurance","Flexible work options"],"pl-PL":["Prywatne ubezpieczenie zdrowotne","Elastyczne opcje pracy"]}, 
                        salary_expectation = {
                            'key' : 
                            }, 
                        locations = {"en-US":[{"city":"Warsaw","country":"Poland","region":"Masovian"}],"pl-PL":[{"city":"Warszawa","country":"Polska","region":"Mazowieckie"}]}, 
                        sites = {"en-US":[{"siteType":"office"},{"siteType":"hybrid"}],"pl-PL":[{"siteType":"biuro"},{"siteType":"hybrydowy"}]}, 
                        organization = smartytalent_client.models.job_attributes_organization_schema.JobAttributesOrganizationSchema(
                            name = '', 
                            address = smartytalent_client.models.job_attributes_organization_address_schema.JobAttributesOrganizationAddressSchema(
                                city = '', 
                                country = '', 
                                county = '', 
                                postalcode = '', 
                                street = '', ), ), 
                        settings = smartytalent_client.models.job_attributes_settings_schema.JobAttributesSettingsSchema(
                            conversation = smartytalent_client.models.job_attributes_settings_conversation_schema.JobAttributesSettingsConversationSchema(
                                email = smartytalent_client.models.job_attributes_settings_conversation_email_schema.JobAttributesSettingsConversationEmailSchema(
                                    contact = smartytalent_client.models.job_attributes_settings_conversation_email_contact_schema.JobAttributesSettingsConversationEmailContactSchema(
                                        cc = [
                                            ''
                                            ], 
                                        bcc = [
                                            ''
                                            ], ), 
                                    delays = smartytalent_client.models.job_attributes_settings_conversation_email_delays_schema.JobAttributesSettingsConversationEmailDelaysSchema(
                                        initial = '', ), 
                                    external_sender = True, 
                                    is_sendable = True, ), 
                                candidate_interview = smartytalent_client.models.job_attributes_settings_conversation_candidate_interview_schema.JobAttributesSettingsConversationCandidateInterviewSchema(
                                    enabled = True, 
                                    questions = True, ), 
                                persona_interview = smartytalent_client.models.job_attributes_settings_conversation_persona_interview_schema.JobAttributesSettingsConversationPersonaInterviewSchema(
                                    enabled = True, ), 
                                tone = '', ), 
                            criterias = smartytalent_client.models.job_attributes_settings_criterias_schema.JobAttributesSettingsCriteriasSchema(
                                weight = '', 
                                mandatory_criteria_rejection_rating = '', 
                                mandatory_criteria_satisfy_rating = '', ), 
                            operation = smartytalent_client.models.job_attributes_settings_operation_schema.JobAttributesSettingsOperationSchema(
                                change_stage = True, 
                                create_conversation_report = True, 
                                create_note = True, 
                                create_rate = True, 
                                create_tag = True, ), 
                            persona = smartytalent_client.models.job_attributes_settings_persona_schema.JobAttributesSettingsPersonaSchema(
                                weight = '', ), 
                            rating_restrictiveness = '', ), ), ),
        )
        """

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

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