def test_find_my_indexes(self): idx = Indexes(self.cfg) self.assertIsNone(idx.find_my_indexes()) new_idx = os.path.join(os.path.dirname(self.cfg.sequence_db), idx.name + ".idx") open(new_idx, 'w') self.assertEqual(idx.find_my_indexes(), new_idx)
def test_build_no_idx(self): if not which('makeblastdb') and which('formatdb'): self.cfg.options['index_db_exe'] = 'formatdb' idx = Indexes(self.cfg) idx.build() my_idx = idx.find_my_indexes() hmmer_idx = idx.find_hmmer_indexes() self.assertEqual(my_idx, os.path.join(os.path.dirname(self.cfg.sequence_db), idx.name + ".idx")) self.assertEqual(hmmer_idx, [self.cfg.sequence_db + suffix for suffix in ('.phr', '.pin', '.psd', '.psi', '.psq')])
def test_build_no_idx(self): if not which('makeblastdb') and which('formatdb'): self.cfg.options['index_db_exe'] = 'formatdb' idx = Indexes(self.cfg) idx.build() my_idx = idx.find_my_indexes() hmmer_idx = idx.find_hmmer_indexes() self.assertEqual(my_idx, os.path.join( os.path.dirname(self.cfg.sequence_db), idx.name + ".idx")) self.assertEqual( hmmer_idx , [ self.cfg.sequence_db + suffix for suffix in ('.phr', '.pin', '.psd', '.psi', '.psq')])
def test_build_with_idx(self): if not which('makeblastdb') and which('formatdb'): self.cfg.options['index_db_exe'] = 'formatdb' #put fake hmmer indexes suffixes = ('.phr', '.pin', '.psd', '.psi', '.psq') for s in suffixes: new_idx = os.path.join( self.cfg.sequence_db + s) open(new_idx, 'w') idx = Indexes(self.cfg) new_idx = open(os.path.join( os.path.dirname(self.cfg.sequence_db), idx.name + ".idx"), 'w') idx.build() my_idx = idx.find_my_indexes() hmmer_idx = idx.find_hmmer_indexes() for f in hmmer_idx +[my_idx]: self.assertEqual(os.path.getsize(f), 0)
def test_build_force(self): # put fake hmmer indexes if not which('makeblastdb') and which('formatdb'): self.cfg.options['index_db_exe'] = 'formatdb' suffixes = ('.phr', '.pin', '.psd', '.psi', '.psq') for s in suffixes: new_idx = os.path.join( self.cfg.sequence_db + s) open(new_idx, 'w') idx = Indexes(self.cfg) idx.build(force=True) my_idx = idx.find_my_indexes() hmmer_idx = idx.find_hmmer_indexes() for f in hmmer_idx + [my_idx]: self.assertNotEqual(os.path.getsize(f), 0)
def test_build_with_idx(self): if not which('makeblastdb') and which('formatdb'): self.cfg.options['index_db_exe'] = 'formatdb' # put fake hmmer indexes suffixes = ('.phr', '.pin', '.psd', '.psi', '.psq') for s in suffixes: new_idx = os.path.join(self.cfg.sequence_db + s) open(new_idx, 'w') idx = Indexes(self.cfg) new_idx = open(os.path.join( os.path.dirname(self.cfg.sequence_db), idx.name + ".idx"), 'w') idx.build() my_idx = idx.find_my_indexes() hmmer_idx = idx.find_hmmer_indexes() for f in hmmer_idx + [my_idx]: self.assertEqual(os.path.getsize(f), 0)
def test_fill_my_db(self): gene_name = "gspD" c_gene = CoreGene(self.model_location, gene_name, self.profile_factory) report_path = os.path.join(self.cfg.working_dir(), gene_name + self.cfg.res_search_suffix()) report = GembaseHMMReport(c_gene, report_path, self.cfg) idx = Indexes(self.cfg) macsyfinder_idx = idx.find_my_indexes() gspD_hmmer_path = self.find_data( os.path.join('hmm', 'gspD.search_hmm.out')) db = report._build_my_db(gspD_hmmer_path) report._fill_my_db(macsyfinder_idx, db) self.assertDictEqual( db, { 'PSAE001c01_031420': (658, 73), 'PSAE001c01_051090': (714, 75), 'PSAE001c01_018920': (776, 71), 'PSAE001c01_043580': (416, 74), 'PSAE001c01_017350': (600, 70), 'PSAE001c01_013980': (759, 69), 'PSAE001c01_026600': (273, 72), 'NC_xxxxx_xx_056141': (803, 141), 'PSAE001c01_006940': (803, 68) })
def fake_init(obj, cfg): obj.cfg = cfg idx = Indexes(self.cfg) obj.sequence_idx = idx.find_my_indexes() obj.topology_file = self.cfg.topology_file obj._DB = {}
def fake_init(obj, cfg): obj.cfg = cfg idx = Indexes(self.cfg) obj.sequence_idx = idx.find_my_indexes() obj.topology_file = self.cfg.topology_file obj._DB = {}
def test_find_my_indexes(self): idx = Indexes(self.cfg) self.assertIsNone(idx.find_my_indexes()) new_idx = os.path.join(os.path.dirname(self.cfg.sequence_db), idx.name + ".idx") open(new_idx, 'w') self.assertEqual(idx.find_my_indexes(), new_idx)
def test_build_force(self): idx = Indexes(self.cfg) idx.build(force=True) my_idx = idx.find_my_indexes() self.assertNotEqual(os.path.getsize(my_idx), 0)
def test_build_with_idx(self): idx = Indexes(self.cfg) open(os.path.join(os.path.dirname(self.cfg.sequence_db()), idx.name + ".idx"), 'w').close() idx.build() my_idx = idx.find_my_indexes() self.assertEqual(os.path.getsize(my_idx), 0)
def test_build_no_idx(self): idx = Indexes(self.cfg) idx.build() my_idx = idx.find_my_indexes() self.assertEqual(my_idx, os.path.join(os.path.dirname(self.cfg.sequence_db()), idx.name + ".idx"))