def test_mutations(self): """ to check if mutations are correctly retrieved """ self.init_test(self.current_func_name) abs_sa_db = self.__create_db_instance() test_file = os.path.join(self.data_dir, self.current_func_name + ".tab.csv") sa_db = SummarizeAnnovarDB() sa_db.open_db(test_file) abs_sa_db.add_connector(sa_db) mutations = abs_sa_db.mutations # *************** test keys ****************** self.assertEqual(len(mutations.keys()), 9, "Incorrect number of mutation keys") self.assertTrue("18|12702705|G|C" in mutations, "Incorrect mutation key") self.assertTrue("18|12697298|G|T" in mutations, "Incorrect mutation key") self.assertTrue("18|12702536|T|G" not in mutations, "Incorrect mutation key") # *************** test contents ****************** test_mutation = mutations["18|12702537|T|G"] self.assertEqual(len(mutations), 9, "Incorrect number of mutations") self.assertEqual(test_mutation.func, "exonic", 'Incorrect Annovar content at "Func" column') self.assertEqual(test_mutation.gene, "CEP76", 'Incorrect Annovar content at "Gene" column') self.assertEqual( test_mutation.exonic_func, "synonymous SNV", 'Incorrect Annovar content at "ExonicFunc" column' ) self.assertEqual(test_mutation.dbsnp137, "rs146647843", 'Incorrect Annovar content at "dbSNP137" column') self.assertEqual(test_mutation.avsift, "0.45", 'Incorrect Annovar content at "AVSIFT" column') self.assertEqual(test_mutation.ljb_phylop, "0.994193", 'Incorrect Annovar content at "LJB_PhyloP" column') self.assertEqual(test_mutation.ljb_sift_pred, "D", 'Incorrect Annovar content at "LJB_SIFT_Pred" column') self.assertEqual(test_mutation.ljb_polyphen2, "0.966", 'Incorrect Annovar content at "LJB_PolyPhen2" column') self.assertEqual(test_mutation.ljb_lrt_pred, "D", 'Incorrect Annovar content at "LJB_LRT_Pred" column') self.assertEqual(test_mutation.ljb_gerp, "4.62", 'Incorrect Annovar content at "LJB_GERP++" column')
def __connect_summarize_annovar_db(self, csv_file, delimiter="\t"): self.info("creating summarize-annovar db connection to " + csv_file) sa_db = SummarizeAnnovarDB() sa_db.open_db(csv_file, delimiter) self.__abs_sa_db.add_connector(sa_db)