Beispiel #1
0
    def test_dict_each_obsolete(self):
        var1 = Variant('var1')
        var1.warnings = ['obsolete']
        var1.output_type_flag = 'gene'
        var2 = Variant('var2')
        var2.warnings = ['obsolete']
        var2.output_type_flag = 'intergenic'
        var3 = Variant('var3')
        var3.warnings = ['obsolete']
        var4 = Variant('var4')
        var4.warnings = ['obsolete']
        var4.output_type_flag = 'gene'
        var4.hgvs_transcript_variant = ''

        obj = ValOutput([var1, var2, var3, var4], self.vv)
        res = obj.format_as_dict(with_meta=False)
        print(res)

        self.assertIsInstance(res, dict)
        self.assertEqual(list(res), [
            'flag', 'None', 'intergenic_variant_1', 'obsolete_record_1',
            'obsolete_record_2'
        ])
        self.assertEqual(res['flag'], 'gene_variant')
        self.assertEqual(res['None']['submitted_variant'], 'var1')
        self.assertEqual(res['intergenic_variant_1']['submitted_variant'],
                         'var2')
        self.assertEqual(res['obsolete_record_1']['submitted_variant'], 'var3')
        self.assertEqual(res['obsolete_record_2']['submitted_variant'], 'var4')
Beispiel #2
0
    def test_table_intergenic_warnings(self):
        var1 = Variant('var1')
        var1.output_type_flag = 'intergenic'
        var1.warnings = ['Validation error']
        var2 = Variant('var2')
        var2.output_type_flag = 'intergenic'
        var2.warnings = ['obsolete']
        var3 = Variant('var3')
        var3.output_type_flag = 'intergenic'
        var3.warnings = ['obsolete']
        var3.hgvs_transcript_variant = ''

        obj = ValOutput([var1, var2, var3], self.vv)
        res = obj.format_as_table(with_meta=False)
        self.assertIsInstance(res, list)
        self.assertEqual(res[1], [
            'var1', 'Validation error', None, None, None, None, None, None, '',
            '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''
        ])
        self.assertEqual(res[2], [
            'var2', 'obsolete', None, None, None, None, None, None, '', '', '',
            '', '', '', '', '', '', '', '', '', '', '', '', '', ''
        ])
        self.assertEqual(res[3], [
            'var3', 'obsolete', '', None, None, None, None, None, '', '', '',
            '', '', '', '', '', '', '', '', '', '', '', '', '', ''
        ])
        self.assertEqual(len(res), 4)
Beispiel #3
0
    def test_dict_each_with_error_in_warnings(self):
        var1 = Variant('var1')
        var1.warnings = ['Validation error']
        var1.output_type_flag = 'gene'
        var2 = Variant('var2')
        var2.warnings = ['Validation error']
        var2.output_type_flag = 'intergenic'
        var3 = Variant('var3')
        var3.warnings = ['Validation error']

        obj = ValOutput([var1, var2, var3], self.vv)
        res = obj.format_as_dict(with_meta=False)
        print(res)

        self.assertIsInstance(res, dict)
        self.assertEqual(list(res), [
            'flag', 'validation_error_1', 'intergenic_variant_1',
            'validation_error_2'
        ])
        self.assertEqual(res['flag'], 'intergenic')
        self.assertEqual(res['validation_error_1']['submitted_variant'],
                         'var1')
        self.assertEqual(res['intergenic_variant_1']['submitted_variant'],
                         'var2')
        self.assertEqual(res['validation_error_2']['submitted_variant'],
                         'var3')
Beispiel #4
0
 def test_dict_two_variants(self):
     var1 = Variant('var1')
     var2 = Variant('var2')
     obj = ValOutput([var1, var2], self.vv)
     res = obj.format_as_dict(with_meta=False)
     self.assertIsInstance(res, dict)
     self.assertEqual(list(res), ['flag', 'validation_warning_1', 'validation_warning_2'])
     self.assertEqual(res['flag'], 'warning')
     self.assertEqual(res['validation_warning_1']['submitted_variant'], 'var1')
     self.assertEqual(res['validation_warning_2']['submitted_variant'], 'var2')
Beispiel #5
0
 def test_dict_one_intergenic(self):
     var1 = Variant('var1')
     var1.output_type_flag = 'intergenic'
     var2 = Variant('var2')
     obj = ValOutput([var1, var2], self.vv)
     res = obj.format_as_dict(with_meta=False)
     print(res)
     self.assertIsInstance(res, dict)
     self.assertEqual(list(res), ['flag', 'intergenic_variant_1', 'validation_warning_1'])
     self.assertEqual(res['flag'], 'intergenic')
     self.assertEqual(res['intergenic_variant_1']['submitted_variant'], 'var1')
     self.assertEqual(res['validation_warning_1']['submitted_variant'], 'var2')
Beispiel #6
0
 def test_dict_one_intergenic_and_one_gene_reversed(self):
     var1 = Variant('var1')
     var1.output_type_flag = 'intergenic'
     var2 = Variant('var2')
     var2.output_type_flag = 'gene'
     obj = ValOutput([var2, var1], self.vv)
     res = obj.format_as_dict(with_meta=False)
     print(res)
     self.assertIsInstance(res, dict)
     self.assertEqual(list(res), ['flag', 'None', 'intergenic_variant_1'])
     self.assertEqual(res['flag'], 'intergenic')
     self.assertEqual(res['intergenic_variant_1']['submitted_variant'], 'var1')
     self.assertEqual(res['None']['submitted_variant'], 'var2')
Beispiel #7
0
 def test_dict_one_variant(self):
     var = Variant('')
     obj = ValOutput([var], self.vv)
     res = obj.format_as_dict(with_meta=False)
     self.assertIsInstance(res, dict)
     self.assertEqual(list(res), ['flag', 'validation_warning_1'])
     self.assertEqual(res['flag'], 'warning')
Beispiel #8
0
 def test_json(self):
     var = Variant('')
     obj = ValOutput([var], self.vv)
     res = obj.format_as_json(with_meta=False)
     self.assertIsInstance(res, str)
     self.assertIn('"flag": "warning"', res)
     self.assertIn('"validation_warning_1": {"selected_assembly": false, "submitted_variant": ""', res)
     self.assertEqual(json.loads(res), obj.format_as_dict(with_meta=False))
Beispiel #9
0
 def test_table_intergenic(self):
     var1 = Variant('var1')
     var1.output_type_flag = 'intergenic'
     obj = ValOutput([var1], self.vv)
     res = obj.format_as_table(with_meta=False)
     print(res)
     self.assertIsInstance(res, list)
     self.assertEqual(res[1], ['var1', '', None, None, None, None, None, None, None, '', '', '', '', '', '', '',
                               '', '', '', '', '', '', '', '', '', ''])
     self.assertEqual(len(res), 2)
Beispiel #10
0
    def test_create_all_init(self):
        var = Variant('NM_015120.4:c.34=',
                      quibble='NM_015120.4:c.34=',
                      warnings=['Got a warning'],
                      write=False,
                      primary_assembly='GRCh37',
                      order=1)

        self.assertEqual(var.quibble, 'NM_015120.4:c.34=')
        self.assertEqual(var.warnings, ['Got a warning'])
        self.assertFalse(var.write)
        self.assertEqual(var.primary_assembly, 'GRCh37')
        self.assertEqual(var.order, 1)
Beispiel #11
0
 def test_table_one(self):
     var1 = Variant('var1')
     obj = ValOutput([var1], self.vv)
     res = obj.format_as_table(with_meta=False)
     print(res)
     self.assertIsInstance(res, list)
     self.assertEqual(res, [['Input', 'Warnings', 'Select transcript', 'HGVS_transcript', 'HGVS_intronic_chr_context',
                             'HGVS_intronic_rsg_context', 'HGVS_RefSeqGene', 'HGVS_LRG',
                             'HGVS_LRG_transcript', 'HGVS_Predicted_Protein', 'HGVS_Genomic_GRCh37', 'GRCh37_CHR',
                             'GRCh37_POS', 'GRCh37_ID', 'GRCh37_REF', 'GRCh37_ALT', 'HGVS_Genomic_GRCh38',
                             'GRCh38_CHR', 'GRCh38_POS', 'GRCh38_ID', 'GRCh38_REF', 'GRCh38_ALT',
                             'Gene_Symbol', 'HGNC_Gene_ID', 'Transcript_description', 'Alt_genomic_loci'],
                            ['var1', '', None, None, None, None, None, None, None, '', '', '', '', '', '', '', '',
                             '', '', '', '', '', '', '', '', '']])
Beispiel #12
0
    def test_all_defaults(self):
        var = Variant('NM_015120.4:c.34=')

        self.assertEqual(var.hgvs_formatted, None)
        self.assertEqual(var.hgvs_genomic, None)
        self.assertEqual(var.hgvs_coding, None)
        self.assertEqual(var.post_format_conversion, None)
        self.assertEqual(var.pre_RNA_conversion, None)
        self.assertEqual(var.input_parses, None)

        self.assertEqual(var.description, '')
        self.assertEqual(var.coding, '')
        self.assertEqual(var.coding_g, '')
        self.assertEqual(var.genomic_r, '')
        self.assertEqual(var.genomic_g, '')
        self.assertEqual(var.protein, '')
        self.assertEqual(var.output_type_flag, 'warning')
        self.assertEqual(var.gene_symbol, '')

        self.assertEqual(var.timing, {})

        self.assertEqual(var.refsource, None)
        self.assertEqual(var.reftype, None)

        # Normalizers
        self.assertEqual(var.hn, None)
        self.assertEqual(var.reverse_normalizer, None)
        self.assertEqual(var.evm, None)
        self.assertEqual(var.no_norm_evm, None)
        self.assertEqual(var.min_evm, None)
        self.assertEqual(var.lose_vm, None)

        # Required for output
        self.assertEqual(var.hgvs_transcript_variant, None)
        self.assertEqual(var.genome_context_intronic_sequence, None)
        self.assertEqual(var.refseqgene_context_intronic_sequence, None)
        self.assertEqual(var.hgvs_refseqgene_variant, None)
        self.assertEqual(var.hgvs_predicted_protein_consequence, None)
        self.assertEqual(var.hgvs_lrg_transcript_variant, None)
        self.assertEqual(var.hgvs_lrg_variant, None)
        self.assertEqual(var.alt_genomic_loci, None)
        self.assertEqual(var.primary_assembly_loci, None)
        self.assertEqual(var.reference_sequence_records, None)
        self.assertEqual(var.validated, False)
Beispiel #13
0
 def test_warnings_type_int(self):
     var = Variant('NM_015120.4:c.34=', warnings=0)
     self.assertEqual(var.warnings, [0])
Beispiel #14
0
 def setUp(self):
     self.var = Variant('NM_015120.4:c.34=')
Beispiel #15
0
    def test_create(self):
        var = Variant('NM_015120.4:c.34=')

        self.assertIsInstance(var, Variant)
        self.assertEqual(var.original, 'NM_015120.4:c.34=')
Beispiel #16
0
 def test_order_not_set(self):
     var = Variant('NM_015120.4:c.34=')
     self.assertEqual(var.order, False)
Beispiel #17
0
 def test_primary_assembly_not_set(self):
     var = Variant('NM_015120.4:c.34=')
     self.assertEqual(var.primary_assembly, False)
Beispiel #18
0
 def test_write_not_set(self):
     var = Variant('NM_015120.4:c.34=')
     self.assertEqual(var.write, True)
Beispiel #19
0
 def test_write_type(self):
     var = Variant('NM_015120.4:c.34=', write='banana')
     self.assertEqual(var.write, 'banana')
Beispiel #20
0
 def test_warnings_not_set(self):
     var = Variant('NM_015120.4:c.34=')
     self.assertEqual(var.warnings, [])
Beispiel #21
0
 def test_warnings_type(self):
     var = Variant('NM_015120.4:c.34=', warnings='string')
     self.assertEqual(var.warnings, ['string'])
Beispiel #22
0
 def test_quibble_not_set(self):
     var = Variant('NM_015120.4:c.34=')
     self.assertEqual(var.quibble, 'NM_015120.4:c.34=')
Beispiel #23
0
 def test_quibble_type(self):
     var = Variant('NM_015120.4:c.34=', quibble=0)
     self.assertEqual(var.quibble, 0)