Пример #1
0
    def test_RunGenovo_set_infile_outfile(self):

        infile_var = "test_infile.fasta"
        outfile_var = "test_outfile.fasta"
        genovo = RunGenovo(infile=infile_var, outfile=outfile_var,
                           pdir=self.data_dir, no_iter=3, thresh=250,
                           check_exist=False)
        expected = [self.data_dir + infile_var, "3"]
        self.assertEqual(genovo.assemble.get_all_switches(), expected)
        expected = ["250", self.data_dir + outfile_var,
                    self.data_dir + infile_var + ".dump.best"]
        self.assertEqual(genovo.finalize.get_all_switches(), expected)

        infile_var = "test_infile2.fasta"
        genovo.set_infile_name(infile_var)
        self.assertEqual(genovo.assemble.get_all_switches(), [infile_var, "3"])
        expected = ["250", self.data_dir + outfile_var,
                    infile_var + ".dump.best"]
        self.assertEqual(genovo.finalize.get_all_switches(), expected)

        outfile_var = "test_outfile2.fasta"
        genovo.set_outfile(outfile_var)
        self.assertEqual(genovo.assemble.get_all_switches(), [infile_var, "3"])
        expected = ["250", outfile_var, infile_var + ".dump.best"]
        self.assertEqual(genovo.finalize.get_all_switches(), expected)
Пример #2
0
 def test_RunGenovo_set_number_of_iter(self):
     infile_var = "test_infile.fasta"
     genovo = RunGenovo(infile=infile_var, pdir=self.data_dir, no_iter=3,
                        thresh=250, check_exist=False)
     self.assertRaises(ValueError, genovo.set_assemble_number_of_iter, 1.1)
     self.assertRaises(ValueError, genovo.set_assemble_number_of_iter, -1)
     self.assertRaises(ValueError, genovo.set_assemble_number_of_iter, "string")
     self.assertRaises(ValueError, genovo.set_assemble_number_of_iter, "5.9")
     try:
         genovo.set_assemble_number_of_iter("300")
     except ValueError as e:
         self.fail(e)
     self.assertEqual(genovo.assemble.get_all_switches()[run_genovo.ASSEMBLE_NO_ITER_POSITION - 1], "300")
Пример #3
0
    def test_RunGenovo_simple_assemble(self):
        infile_var = "all_read.fa"
        genovo = RunGenovo(infile=infile_var, pdir=self.data_dir,
                           wdir=self.working_dir, no_iter=3, thresh=250,
                           check_exist=False)
        expected = [self.working_dir + infile_var, "3"]
        self.assertEqual(genovo.assemble.get_all_switches(), expected)

        genovo.set_assemble_number_of_iter(10)
        expected = [self.working_dir + infile_var, "10"]
        self.assertEqual(genovo.assemble.get_all_switches(), expected)

        infile_var = "test_infile.fasta"
        genovo.set_infile_name(infile_var)
        self.assertEqual(genovo.assemble.get_all_switches(), [infile_var, "10"])
Пример #4
0
 def test_RunGenovo_set_cutoff(self):
     """
     Note: There are different type of Errors
     Feel free to change/swap/move between ValueError and TypeError
     """
     infile_var = "test_infile.fasta"
     genovo = RunGenovo(infile=infile_var, pdir=self.data_dir, no_iter=3,
                        thresh=250, check_exist=False)
     self.assertRaises(ValueError, genovo.set_finalize_cutoff, 1.1)
     self.assertRaises(ValueError, genovo.set_finalize_cutoff, -1)
     self.assertRaises(ValueError, genovo.set_finalize_cutoff, -2.5)
     self.assertRaises(ValueError, genovo.set_finalize_cutoff, "string")
     try:
         genovo.set_finalize_cutoff("3")
     except ValueError as e:
         self.fail(e)
Пример #5
0
    def test_RunGenovo_simple_finalise(self):
        infile_var = "test_infile.fasta"
        genovo = RunGenovo(infile=infile_var, pdir=self.data_dir, no_iter=3,
                           thresh=250, check_exist=False)
        self.assertEqual(3, len(genovo.finalize._switch))
        expected = ["250", self.data_dir + "test_infile.genovo",
                    self.data_dir + infile_var + ".dump.best"]
        self.assertEqual(genovo.finalize.get_all_switches(), expected)

        genovo.set_finalize_cutoff(300)
        expected = ["300", self.data_dir + "test_infile.genovo",
                    self.data_dir + infile_var + ".dump.best"]
        self.assertEqual(genovo.finalize.get_all_switches(), expected)

        infile_var = "VICTORY!!!.fasta"
        genovo.set_infile_name(infile_var)
        expected = ["300", self.data_dir + "test_infile.genovo",
                    infile_var + ".dump.best"]
        self.assertEqual(genovo.finalize.get_all_switches(), expected)
Пример #6
0
    def test_RunGenovo_read_finalize_outfile(self):
        """
        check if it can "read" assembled contig
        TODO: have check what happen in the file format is invalid,
        assuming its the correct fasta now
        """
        infile_var = "fIn.fasta"
        outfile_var = "fOut.fasta"
        genovo = RunGenovo(infile=infile_var, outfile=outfile_var,
                           pdir=self.data_dir, no_iter=10, thresh=250,
                           check_exist=False)
        result = genovo.read_outfile()
        self.assertEqual(len(result), 2)
        self.assertEqual(list(result.keys()), ["1", "2"])

        expected = [170, 60]
        for i, key in enumerate(result):
#            print key, i, type(result[key]), result[key]
            self.assertEqual(len(result[key]), expected[i])
Пример #7
0
    def init_program(self):
#         self.metasim = RunMetaSim.create_metasim_from_setting(self.setting)
        if self.setting.run_mine:
            self.mine = RunMINE.create_class_from_setting(self.setting)
        else:
            if self.setting.get("assembler_prog") is "genovo":
                self.assembler = RunGenovo.create_genovo_from_setting(self.setting)
            elif self.setting.get("assembler_prog") is "xgenovo":
                self.assembler = RunXGenovo.create_xgenovo_from_setting(self.setting)

            self.glimmer = RunGlimmer.create_glimmer_from_setting(self.setting)
#             self.blast = run_BLAST.RunBlast.create_blast_from_setting(self.setting)
            self.blast = RunBlast.create_blast_from_setting(self.setting)
Пример #8
0
 def test_RunGenovo_run(self):
     infile_var = "tIn.fasta"
     outfile_var = "tOut.fasta"
     genovo = RunGenovo(infile=infile_var, outfile=outfile_var,
                        pdir=self.data_dir, no_iter=10, thresh=100,
                        check_exist=True)
     is_exist, _ = genovo.check_outfiles_with_filetag_exist(self.data_dir + infile_var)
     self.assertFalse(is_exist)
     genovo.run()
     is_exist, _ = genovo.check_outfiles_with_filetag_exist(self.data_dir + infile_var)
     self.assertTrue(is_exist)
     self.assertTrue(genovo.is_file_exist(self.data_dir + "tOut.fasta", True))
     os.remove(self.data_dir + outfile_var)
Пример #9
0
    def test_RunGenovo_check_assemble_result_exist(self):
        """
        check if ./assemble finished running, should produce 3 output files
        only pass if all 3 exist
        """
        infile_var = "assemble.fasta"
        genovo = RunGenovo(infile=infile_var, pdir=self.data_dir, no_iter=10,
                           thresh=250, check_exist=False)
        is_exist, _ = genovo.check_outfiles_with_filetag_exist(self.data_dir + infile_var)
        self.assertFalse(is_exist)
        genovo.run()
        is_exist, _ = genovo.check_outfiles_with_filetag_exist(self.data_dir + infile_var)
        self.assertTrue(is_exist)
        os.remove(self.data_dir + "assemble.genovo")

        # negative test, outfiles are not suppose to exist
        infile_var = "fileNotExist.fasta"
        genovo = RunGenovo(infile=infile_var, pdir=self.data_dir, wdir=self.working_dir, no_iter=10,
                           thresh=250, check_exist=False)
        is_exist, _ = genovo.check_outfiles_with_filetag_exist(self.data_dir + "fileNotExist_out")
        self.assertFalse(is_exist)