def _get_total_alignment_score(self, gene_name): tmp_bam = os.path.join(self.root_dir, 'tmp.get_total_alignment_score.bam') assert not os.path.exists(tmp_bam) tmp_fa = os.path.join(self.root_dir, 'tmp.get_total_alignment_score.ref.fa') assert not os.path.exists(tmp_fa) faidx.write_fa_subset([gene_name], self.genes_fa, tmp_fa, samtools_exe=self.samtools_exe, verbose=self.verbose) mapping.run_bowtie2( self.reads1, self.reads2, tmp_fa, tmp_bam[:-4], threads=self.threads, samtools=self.samtools_exe, bowtie2=self.bowtie2_exe, bowtie2_preset=self.bowtie2_preset, verbose=self.verbose, ) score = mapping.get_total_alignment_score(tmp_bam) os.unlink(tmp_bam) os.unlink(tmp_fa) os.unlink(tmp_fa + '.fai') return score
def test_get_total_alignment_score(self): '''Test get_total_alignment_score''' bam = os.path.join(data_dir, 'mapping_test_get_total_alignment_score.bam') expected = 219 got = mapping.get_total_alignment_score(bam) self.assertEqual(got, expected)
def _total_alignment_score(self, seq_name): tmpdir = tempfile.mkdtemp(prefix='tmp.get_total_aln_score.', dir=os.getcwd()) tmp_bam = os.path.join(tmpdir, 'tmp.get_total_alignment_score.bam') tmp_fa = os.path.join(tmpdir, 'tmp.get_total_alignment_score.ref.fa') faidx.write_fa_subset( [seq_name], self.references_fa, tmp_fa, samtools_exe=self.samtools_exe, verbose=True, verbose_filehandle=self.log_fh ) mapping.run_bowtie2( self.reads1, self.reads2, tmp_fa, tmp_bam[:-4], threads=self.threads, samtools=self.samtools_exe, bowtie2=self.bowtie2_exe, bowtie2_preset=self.bowtie2_preset, verbose=True, verbose_filehandle=self.log_fh ) score = mapping.get_total_alignment_score(tmp_bam) shutil.rmtree(tmpdir) return score