# 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.job_resource_schema import JobResourceSchema

class TestJobResourceSchema(unittest.TestCase):
    """JobResourceSchema unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional) -> JobResourceSchema:
        """Test JobResourceSchema
            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 `JobResourceSchema`
        """
        model = JobResourceSchema()
        if include_optional:
            return JobResourceSchema(
                type = 'jobs',
                id = 'bf325375e030fccba00917317c574773-5',
                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 = '', ), ),
                relationships = smartytalent_client.models.job_relationships_schema.JobRelationshipsSchema(
                    candidates = smartytalent_client.models.job_relationships_candidates_schema.JobRelationshipsCandidatesSchema(
                        data = [
                            smartytalent_client.models.job_relationships_candidates_data_schema.JobRelationshipsCandidatesDataSchema(
                                type = 'candidates', 
                                id = '655cde5c9931802df628f3d2de8ca681-2', )
                            ], ), 
                    translations = smartytalent_client.models.job_relationships_translations_schema.JobRelationshipsTranslationsSchema(), 
                    operations = smartytalent_client.models.job_relationships_operations_schema.JobRelationshipsOperationsSchema(), 
                    conversations = smartytalent_client.models.job_relationships_conversations_schema.JobRelationshipsConversationsSchema(), 
                    personas = smartytalent_client.models.job_relationships_personas_schema.JobRelationshipsPersonasSchema(), ),
                links = smartytalent_client.models.resource_links_schema.ResourceLinksSchema(
                    self = '', ),
                meta = {
                    'key' : ''
                    }
            )
        else:
            return JobResourceSchema(
                type = 'jobs',
                id = 'bf325375e030fccba00917317c574773-5',
                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 testJobResourceSchema(self):
        """Test JobResourceSchema"""
        # inst_req_only = self.make_instance(include_optional=False)
        # inst_req_and_optional = self.make_instance(include_optional=True)

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