# coding: utf-8

"""
    NCBI Datasets API

    ### NCBI Datasets is a resource that lets you easily gather data from NCBI. The Datasets version 2 API is still in alpha, and we're updating it often to add new functionality, iron out bugs and enhance usability. For some larger downloads, you may want to download a [dehydrated zip archive](https://www.ncbi.nlm.nih.gov/datasets/docs/v2/how-tos/genomes/large-download/), and retrieve the individual data files at a later time. 

    The version of the OpenAPI document: v2
    Contact: help@ncbi.nlm.nih.gov
    Generated by OpenAPI Generator (https://openapi-generator.tech)

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


import unittest

from ncbi.datasets.openapi.models.v2reports_taxonomy_report_match import V2reportsTaxonomyReportMatch

class TestV2reportsTaxonomyReportMatch(unittest.TestCase):
    """V2reportsTaxonomyReportMatch unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional) -> V2reportsTaxonomyReportMatch:
        """Test V2reportsTaxonomyReportMatch
            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 `V2reportsTaxonomyReportMatch`
        """
        model = V2reportsTaxonomyReportMatch()
        if include_optional:
            return V2reportsTaxonomyReportMatch(
                taxonomy = ncbi.datasets.openapi.models.v2reports_taxonomy_node.v2reportsTaxonomyNode(
                    tax_id = 56, 
                    rank = 'NO_RANK', 
                    current_scientific_name = ncbi.datasets.openapi.models.v2reports_name_and_authority.v2reportsNameAndAuthority(
                        name = '', 
                        authority = '', 
                        type_strains = [
                            ncbi.datasets.openapi.models.v2reports_taxonomy_type_material.v2reportsTaxonomyTypeMaterial(
                                type_strain_name = '', 
                                type_strain_id = '', 
                                bio_collection_id = '', 
                                bio_collection_name = '', 
                                collection_type = [
                                    'no_collection_type'
                                    ], 
                                type_class = '', )
                            ], 
                        curator_synonym = '', 
                        homotypic_synonyms = [
                            ncbi.datasets.openapi.models.v2reports_name_and_authority.v2reportsNameAndAuthority(
                                name = '', 
                                authority = '', 
                                curator_synonym = '', 
                                heterotypic_synonyms = [
                                    
                                    ], 
                                other_synonyms = [
                                    
                                    ], 
                                informal_names = [
                                    ''
                                    ], 
                                basionym = , 
                                publications = [
                                    ncbi.datasets.openapi.models.v2reports_name_and_authority_publication.v2reportsNameAndAuthorityPublication(
                                        name = '', 
                                        citation = '', )
                                    ], 
                                notes = [
                                    ncbi.datasets.openapi.models.v2reports_name_and_authority_note.v2reportsNameAndAuthorityNote(
                                        name = '', 
                                        note = '', 
                                        note_classifier = 'no_authority_classifier', )
                                    ], 
                                formal = True, )
                            ], 
                        heterotypic_synonyms = [
                            
                            ], 
                        other_synonyms = [
                            
                            ], 
                        informal_names = [
                            ''
                            ], 
                        basionym = , 
                        publications = [
                            ncbi.datasets.openapi.models.v2reports_name_and_authority_publication.v2reportsNameAndAuthorityPublication(
                                name = '', 
                                citation = '', )
                            ], 
                        notes = [
                            ncbi.datasets.openapi.models.v2reports_name_and_authority_note.v2reportsNameAndAuthorityNote(
                                name = '', 
                                note = '', )
                            ], 
                        formal = True, ), 
                    basionym = , 
                    curator_common_name = '', 
                    group_name = '', 
                    has_type_material = True, 
                    classification = ncbi.datasets.openapi.models.v2reports_classification.v2reportsClassification(
                        superkingdom = ncbi.datasets.openapi.models.v2reports_tax_data.v2reportsTaxData(
                            name = '', 
                            id = 56, ), 
                        kingdom = ncbi.datasets.openapi.models.v2reports_tax_data.v2reportsTaxData(
                            name = '', 
                            id = 56, ), 
                        phylum = , 
                        class = , 
                        order = , 
                        family = , 
                        genus = , 
                        species = , 
                        domain = , 
                        realm = , ), 
                    parents = [
                        56
                        ], 
                    children = [
                        56
                        ], 
                    counts = [
                        ncbi.datasets.openapi.models.v2reports_taxonomy_node_count_by_type.v2reportsTaxonomyNodeCountByType(
                            type = 'COUNT_TYPE_UNSPECIFIED', 
                            count = 56, )
                        ], 
                    genomic_moltype = '', 
                    current_scientific_name_is_formal = True, 
                    secondary_tax_ids = [
                        56
                        ], ),
                query = [
                    ''
                    ],
                warning = ncbi.datasets.openapi.models.v2reports_warning.v2reportsWarning(
                    gene_warning_code = 'UNKNOWN_GENE_WARNING_CODE', 
                    reason = '', 
                    message = '', 
                    replaced_id = ncbi.datasets.openapi.models.v2reports_warning_replaced_id.v2reportsWarningReplacedId(
                        requested = '', 
                        returned = '', ), 
                    unrecognized_identifier = '', ),
                errors = [
                    ncbi.datasets.openapi.models.v2reports_error.v2reportsError(
                        assembly_error_code = 'UNKNOWN_ASSEMBLY_ERROR_CODE', 
                        gene_error_code = 'UNKNOWN_GENE_ERROR_CODE', 
                        organelle_error_code = 'UNKNOWN_ORGANELLE_ERROR_CODE', 
                        virus_error_code = 'UNKNOWN_VIRUS_ERROR_CODE', 
                        taxonomy_error_code = 'UNKNOWN_TAXONOMY_ERROR_CODE', 
                        reason = '', 
                        message = '', 
                        invalid_identifiers = [
                            ''
                            ], )
                    ]
            )
        else:
            return V2reportsTaxonomyReportMatch(
        )
        """

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

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