예제 #1
0
    def test_longorfs_task(self):
        with TemporaryDirectory() as td:
            with Move(td):
                with TestData('test-transcript.fa', td) as transcript, \
                     TestData('test-transcript-orf.pep', td) as exp_orf:

                    task = tasks.get_transdecoder_orf_task(transcript,
                                                           self.longorfs_cfg)
                    run_tasks([task], ['run'])
                    output_dir = transcript + '.transdecoder_dir'

                    exp_pep = open(exp_orf).read()

                    pep_fn = os.path.join(output_dir, 'longest_orfs.pep')
                    self.assertTrue(os.path.isfile(pep_fn))
                    pep = open(pep_fn).read()

                    self.assertIn(exp_pep, pep)
예제 #2
0
    def test_predict_task(self):
        with TemporaryDirectory() as td:
            with Move(td):
                with TestData('test-transcript.fa', td) as transcript, \
                     TestData('test-protein-x-pfam-a.tbl', td) as pfam:

                    orf_task = tasks.get_transdecoder_orf_task(transcript,
                                                               self.longorfs_cfg)
                    pred_task = tasks.get_transdecoder_predict_task(transcript,
                                                                    pfam,
                                                                    self.predict_cfg)
                    run_tasks([orf_task, pred_task], ['run'])
                    
                    for ext in self.extensions:
                        fn = os.path.join(td, transcript+'.transdecoder'+ext)
                        self.assertTrue(os.path.isfile(fn))
                        contents = open(fn).read()
                        if ext == '.gff3':
                            self.assertIn('mRNA', contents)
                            self.assertIn('gene', contents)
                            self.assertIn('CDS', contents)
                            self.assertIn('three_prime_UTR', contents)
                            self.assertIn('exon', contents)