# coding: utf-8

"""
    Synthetic Users

     **Description**: Synthetic Users provides AI-powered, human-like participants for user and market research, streamlining data collection and insight generation. With multi-agent architecture, it simulates realistic, scalable interactions, enabling efficient research through synthetic interviews and surveys.  **Features**: - **In-depth Interviews**: Interactive, AI-driven interviews with customizable follow-up options. - **Global Surveys**: Fast, quantitative data collection at scale. - **Customizable Synthetic Users**: Integrate proprietary data for tailored research. - **Multi-agent Framework**: Mimics real human interactions for accurate insights.  **Use Cases**: - **Product Testing**: Identify needs and refine concepts. - **Market Analysis**: Expand reach and enhance user satisfaction.    For more information, visit [Synthetic Users](https://www.syntheticusers.com).

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

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


import unittest

from syntheticusers.models.study import Study

class TestStudy(unittest.TestCase):
    """Study unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional) -> Study:
        """Test Study
            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 `Study`
        """
        model = Study()
        if include_optional:
            return Study(
                id = '',
                description = '',
                project_id = '',
                created_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'),
                bookmarked = True,
                language = '',
                audiences = [
                    ''
                    ],
                audiences_obj = [
                    syntheticusers.models.audience.Audience(
                        id = '', 
                        title = '', 
                        description = '', 
                        project_id = '', 
                        deleted = True, 
                        created_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), )
                    ],
                problems = [
                    ''
                    ],
                problems_obj = [
                    syntheticusers.models.problem.Problem(
                        id = '', 
                        description = '', 
                        project_id = '', 
                        deleted = True, 
                        created_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), )
                    ],
                files = [
                    ''
                    ],
                plan_id = '',
                progress = syntheticusers.models.study_progress.StudyProgress(
                    total = 56, 
                    completed = 56, 
                    failed = 56, ),
                status = '',
                solution_id = '',
                solution = syntheticusers.models.solution.Solution(
                    id = '', 
                    description = '', 
                    project_id = '', 
                    deleted = True, 
                    created_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), ),
                research_goal_id = '',
                research_goal = syntheticusers.models.research_goal.ResearchGoal(
                    id = '', 
                    description = '', 
                    project_id = '', 
                    created_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), ),
                knowledge_graphs = [
                    ''
                    ],
                strategy = 'solution_feedback',
                interview_count = 56,
                custom_script = '',
                guide = {
                    'key' : null
                    },
                interviews = [
                    ''
                    ],
                summaries = [
                    ''
                    ]
            )
        else:
            return Study(
                id = '',
                description = '',
                project_id = '',
                created_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'),
                bookmarked = True,
                language = '',
                audiences = [
                    ''
                    ],
                audiences_obj = [
                    syntheticusers.models.audience.Audience(
                        id = '', 
                        title = '', 
                        description = '', 
                        project_id = '', 
                        deleted = True, 
                        created_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), )
                    ],
                problems = [
                    ''
                    ],
                problems_obj = [
                    syntheticusers.models.problem.Problem(
                        id = '', 
                        description = '', 
                        project_id = '', 
                        deleted = True, 
                        created_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), )
                    ],
                files = [
                    ''
                    ],
                plan_id = '',
                status = '',
                strategy = 'solution_feedback',
                interviews = [
                    ''
                    ],
                summaries = [
                    ''
                    ],
        )
        """

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

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