def compare_hgvs(str1, str2): ''' Checks whether is coding or protein hgvs from string, calls check_p_hgvs or check_c_hgvs functions :param str1: hgvs string :param str2: hgvs string :return: exact (yes), yes modified or equivalent (yes_m), no match (no) ''' if is_null(str1) and is_null(str2): return c.EXACT if pHGVS.is_protein(str1) or pHGVS.is_protein(str2): hgvs1 = pHGVS(str1) hgvs2 = pHGVS(str2) return pHGVS.check_p_hgvs(hgvs1, hgvs2) elif cHGVS.is_coding(str1) or cHGVS.is_coding(str2): hgvs1 = cHGVS(str1) hgvs2 = cHGVS(str2) return cHGVS.check_c_hgvs(hgvs1, hgvs2) elif str1.startswith('g.') and str2.startswith('g.'): logging.error('Cannot compare g. hgvs %s, %s' % (str1, str2)) else: logging.error('Unknown input reference:%s,%s' % (str1, str2) ) return c.UNKNOWN
def test_nonsense_1(self): self.query ="p.Tyr567Ter" self.ref="p.Tyr567*" self.check="yes_m" hgvs1 = pHGVS(self.query) hgvs2 = pHGVS(self.ref) message = "%s, %s, %s, %s." % (self._testMethodName, self.query, self.ref, self.check) self.assertEqual(pHGVS.check_p_hgvs(hgvs1, hgvs2 ), self.check)
def test_synonymous_9(self): self.query ="p.Ter257=" self.ref="p.(=)" self.check="yes_m" hgvs1 = pHGVS(self.query) hgvs2 = pHGVS(self.ref) message = "%s, %s, %s, %s." % (self._testMethodName, self.query, self.ref, self.check) self.assertEqual(pHGVS.check_p_hgvs(hgvs1, hgvs2 ), self.check)
def test_dup_p2(self): self.query ="p.Gly54_Arg55dupArgArg" self.ref="p.Gly54_Arg55dup" self.check="p.Gly54_Arg55dup" self.hgvs = pHGVS(self.query) self.ref = pHGVS(self.ref) message = "%s, %s, %s, %s." % (self._testMethodName, self.query, self.ref, self.check) self.assertEqual(pHGVS.check_p_hgvs(self.ref, self.hgvs.alias), 'yes_m')
def test_dup_1(self): self.query ="p.Pro559dup" self.ref="p.Pro559dup" self.check="yes" hgvs1 = pHGVS(self.query) hgvs2 = pHGVS(self.ref) message = "%s, %s, %s, %s." % (self._testMethodName, self.query, self.ref, self.check) self.assertEqual(pHGVS.check_p_hgvs(hgvs1, hgvs2 ), self.check)
def test_frameshift_4(self): self.query ="p.Arg1921fs" self.ref="-" self.check="no" hgvs1 = pHGVS(self.query) hgvs2 = pHGVS(self.ref) message = "%s, %s, %s, %s." % (self._testMethodName, self.query, self.ref, self.check) self.assertEqual(pHGVS.check_p_hgvs(self.query, self.ref ), self.check)
def test_frameshift_2(self): self.query ="p.Glu78Gly" self.ref="p.Glu78Glyfs*7" self.check="no" hgvs1 = pHGVS(self.query) hgvs2 = pHGVS(self.ref) message = "%s, %s, %s, %s." % (self._testMethodName, self.query, self.ref, self.check) self.assertEqual(pHGVS.check_p_hgvs(self.query, self.ref ), self.check)
def test_frameshift_5(self): self.query ="p.Thr655Asnfs" self.ref="p.Thr655Asnfs*49" self.check="yes_m" hgvs1 = pHGVS(self.query) hgvs2 = pHGVS(self.ref) message = "%s, %s, %s, %s." % (self._testMethodName, self.query, self.ref, self.check) self.assertEqual(pHGVS.check_p_hgvs(self.query, self.ref ), self.check)
def test_nonsense_2(self): self.query ="p.Gln136Profs*13" self.ref="p.Gln136Ter13" self.check="no" hgvs1 = pHGVS(self.query) hgvs2 = pHGVS(self.ref) message = "%s, %s, %s, %s." % (self._testMethodName, self.query, self.ref, self.check) self.assertEqual(pHGVS.check_p_hgvs(self.query, self.ref ), self.check)
def test_frameshift_4(self): self.query = "p.Arg1921fs" self.ref = "-" self.check = "no" hgvs1 = pHGVS(self.query) hgvs2 = pHGVS(self.ref) message = "%s, %s, %s, %s." % (self._testMethodName, self.query, self.ref, self.check) self.assertEqual(pHGVS.check_p_hgvs(self.query, self.ref), self.check)
def test_frameshift_2(self): self.query = "p.Glu78Gly" self.ref = "p.Glu78Glyfs*7" self.check = "no" hgvs1 = pHGVS(self.query) hgvs2 = pHGVS(self.ref) message = "%s, %s, %s, %s." % (self._testMethodName, self.query, self.ref, self.check) self.assertEqual(pHGVS.check_p_hgvs(self.query, self.ref), self.check)
def test_dup_1(self): self.query = "p.Pro559dup" self.ref = "p.Pro559dup" self.check = "yes" hgvs1 = pHGVS(self.query) hgvs2 = pHGVS(self.ref) message = "%s, %s, %s, %s." % (self._testMethodName, self.query, self.ref, self.check) self.assertEqual(pHGVS.check_p_hgvs(hgvs1, hgvs2), self.check)
def test_synonymous_9(self): self.query = "p.Ter257=" self.ref = "p.(=)" self.check = "yes_m" hgvs1 = pHGVS(self.query) hgvs2 = pHGVS(self.ref) message = "%s, %s, %s, %s." % (self._testMethodName, self.query, self.ref, self.check) self.assertEqual(pHGVS.check_p_hgvs(hgvs1, hgvs2), self.check)
def test_frameshift_5(self): self.query = "p.Thr655Asnfs" self.ref = "p.Thr655Asnfs*49" self.check = "yes_m" hgvs1 = pHGVS(self.query) hgvs2 = pHGVS(self.ref) message = "%s, %s, %s, %s." % (self._testMethodName, self.query, self.ref, self.check) self.assertEqual(pHGVS.check_p_hgvs(self.query, self.ref), self.check)
def test_nonsense_1(self): self.query = "p.Tyr567Ter" self.ref = "p.Tyr567*" self.check = "yes_m" hgvs1 = pHGVS(self.query) hgvs2 = pHGVS(self.ref) message = "%s, %s, %s, %s." % (self._testMethodName, self.query, self.ref, self.check) self.assertEqual(pHGVS.check_p_hgvs(hgvs1, hgvs2), self.check)
def test_synonymous_8(self): self.query ="p.Pro559Glu" self.ref="p.(=)" self.check="no" hgvs1 = pHGVS(self.query) hgvs2 = pHGVS(self.ref) message = "%s, %s, %s, %s." % (self._testMethodName, self.query, self.ref, self.check) self.assertEqual(pHGVS.check_p_hgvs(hgvs1, hgvs2 ), self.check)
def test_nonsense_2(self): self.query = "p.Gln136Profs*13" self.ref = "p.Gln136Ter13" self.check = "no" hgvs1 = pHGVS(self.query) hgvs2 = pHGVS(self.ref) message = "%s, %s, %s, %s." % (self._testMethodName, self.query, self.ref, self.check) self.assertEqual(pHGVS.check_p_hgvs(self.query, self.ref), self.check)
def test_synonymous_8(self): self.query = "p.Pro559Glu" self.ref = "p.(=)" self.check = "no" hgvs1 = pHGVS(self.query) hgvs2 = pHGVS(self.ref) message = "%s, %s, %s, %s." % (self._testMethodName, self.query, self.ref, self.check) self.assertEqual(pHGVS.check_p_hgvs(hgvs1, hgvs2), self.check)
def test_ins_2(self): self.query ="p.Lys2_Met3insGlnSerLysArg" self.ref="p.Lys2_Met3ins4" self.check="yes_m" hgvs1 = pHGVS(self.query) hgvs2 = pHGVS(self.ref) message = "%s, %s, %s, %s." % (self._testMethodName, self.query, self.ref, self.check) #self.assertEqual(pHGVS.check_insertion(hgvs1, hgvs2 ), self.check) self.assertEqual(pHGVS.check_p_hgvs(hgvs1, hgvs2 ), self.check)
def test_frameshift_1(self): self.query = "p.Glu78fs" self.ref= "p.Glu78Glyfs*7" self.refcheck = "p.Glu78fs*" self.new_ref = "p.Glu78Glyfs" self.check="yes_m" hgvs1 = pHGVS(self.query) hgvs2 = pHGVS(self.ref) message = "%s, %s, %s, %s." % (self._testMethodName, self.query, self.ref, self.check) self.assertEqual(pHGVS.check_p_hgvs(hgvs1, hgvs2), self.check)
def test_dup_p2(self): self.query = "p.Gly54_Arg55dupArgArg" self.ref = "p.Gly54_Arg55dup" self.check = "p.Gly54_Arg55dup" self.hgvs = pHGVS(self.query) self.ref = pHGVS(self.ref) message = "%s, %s, %s, %s." % (self._testMethodName, self.query, self.ref, self.check) self.assertEqual(pHGVS.check_p_hgvs(self.ref, self.hgvs.alias), 'yes_m')
def test_ins_2(self): self.query = "p.Lys2_Met3insGlnSerLysArg" self.ref = "p.Lys2_Met3ins4" self.check = "yes_m" hgvs1 = pHGVS(self.query) hgvs2 = pHGVS(self.ref) message = "%s, %s, %s, %s." % (self._testMethodName, self.query, self.ref, self.check) #self.assertEqual(pHGVS.check_insertion(hgvs1, hgvs2 ), self.check) self.assertEqual(pHGVS.check_p_hgvs(hgvs1, hgvs2), self.check)
def test_frameshift_1(self): self.query = "p.Glu78fs" self.ref = "p.Glu78Glyfs*7" self.refcheck = "p.Glu78fs*" self.new_ref = "p.Glu78Glyfs" self.check = "yes_m" hgvs1 = pHGVS(self.query) hgvs2 = pHGVS(self.ref) message = "%s, %s, %s, %s." % (self._testMethodName, self.query, self.ref, self.check) self.assertEqual(pHGVS.check_p_hgvs(hgvs1, hgvs2), self.check)
def setUp(self): self.longMessage=True self.query = 'p.Met24Pro' self.hgvs = pHGVS(self.query) self.ref="p.Met1Pro" self.hgvs2 = pHGVS(self.ref) #self.check="no" self.check="yes" #self.check_hgvs = pHGVS.normalize_start_lost(self.hgvs) #self.check_hgvs2 = pHGVS.normalize_start_lost(self.hgvs2) message = "%s, %s, %s, answer: %s, %s." % (self._testMethodName, self.query, self.ref, self.check, self.hgvs.alias)
def setUp(self): self.longMessage = True self.query = 'p.Met24Pro' self.hgvs = pHGVS(self.query) self.ref = "p.Met1Pro" self.hgvs2 = pHGVS(self.ref) #self.check="no" self.check = "yes" #self.check_hgvs = pHGVS.normalize_start_lost(self.hgvs) #self.check_hgvs2 = pHGVS.normalize_start_lost(self.hgvs2) message = "%s, %s, %s, answer: %s, %s." % (self._testMethodName, self.query, self.ref, self.check, self.hgvs.alias)
def test_pHGVS_parse_phgvs_string(self): hgvs_str = 'NP_017547.3:(p.Arg34Arg)' var = pHGVS(hgvs_str) phgvs = 'p.Arg34Arg' refseq = 'NP_017547.3' print "Check %s.." % (self._testMethodName) self.assertEqual((phgvs, refseq), (var.name, var.refseq))
def __init__(self, chgvs_str, phgvs_str, id, transcript='', effect='', ghgvs=''): # parse the chgvs string with the cHGVS object self.chgvs_obj = cHGVS(chgvs_str) self.chgvs = self.chgvs_obj.name self.type = self.chgvs_obj.type self.phgvs_obj = pHGVS(phgvs_str) self.phgvs = self.phgvs_obj.name self.ghgvs = ghgvs self.id = id self.effect = effect self.alt = '' self.ref = '' self.chr = '' self.start = '' self.stop = '' self.location = '' self.gen_alt = '' self.gene = '' self.transcript = transcript # get transcript from cHGVS object if the transcript field is null if not is_null(self.chgvs_obj.transcript) and is_null(transcript): self.transcript = self.chgvs_obj.transcript self.protein = '' self.version = Transcript(self.transcript).version self.check = '' self.refalt = ''
def test_get_type_1(self): self.query = "p.Glu78fs" self.check = "fs" var = pHGVS(self.query) message = "%s, %s, %s" % (self._testMethodName, self.query, self.check) self.assertEqual(var.type, self.check)
def test_get_type_1(self): self.query ="p.Glu78fs" self.check="fs" var = pHGVS(self.query) message = "%s, %s, %s" % (self._testMethodName, self.query, self.check) self.assertEqual(var.type, self.check)
def test_get_type_2(self): self.query = "p.Lys2_Met3insGlnSerLys" self.check = "ins" var = pHGVS(self.query) message = "%s, %s, %s" % (self._testMethodName, self.query, self.check) self.assertEqual(var.type, self.check)
def test_get_type_2(self): self.query ="p.Lys2_Met3insGlnSerLys" self.check="ins" var = pHGVS(self.query) message = "%s, %s, %s" % (self._testMethodName, self.query, self.check) self.assertEqual(var.type, self.check)