def test_RunMetaSim_run(self): model_infile_var = "ErrorModelSolexa36bp.mconf" taxon_infile_var = "MetaSim_bint.mprf" outfile_var = "MetaSim_bint-Empirical" metasim = RunMetaSim(model_file=model_infile_var, no_reads=100, taxon_infile=taxon_infile_var, pdir=self.data_dir, wdir=self.working_dir, filename=outfile_var, check_exist=True) self.assertFalse(metasim.is_file_exist(self.working_dir + "test_outfile.fasta", False)) metasim.run(debug=True) # print "7777777", self.working_dir,outfile_var self.assertTrue(metasim.check_outfiles_with_filetag_exist(self.working_dir + outfile_var)) self.assertTrue(metasim.is_file_exist(self.working_dir + outfile_var + ".fna", True)) os.remove(self.working_dir + outfile_var + ".fna")
def test_read_outfile(self): """ check if it can "read" .fna TODO: have check what happen in the file format is invalid, assuming its the correct fasta now """ model_infile_var = "ErrorModelSolexa36bp.mconf" taxon_infile_var = "MetaSim_bint.mprf" outfile_var = "MetaSim_bint-Empirical.fna" metasim = RunMetaSim(model_file=model_infile_var, no_reads=100, taxon_infile=taxon_infile_var, pdir=self.data_dir, wdir=self.working_dir, filename=outfile_var, check_exist=True) metasim.run() result = metasim.read_outfile() self.assertEqual(len(result), 2) self.assertEqual(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])
def test_check_outfile_exist(self): """ check if ./MetaSim finished running, should produce 2 output files only pass if both exist TODO: need to check -d outfile_dir. MetaSim automatically change the filename name """ model_infile_var = "ErrorModelSolexa36bp.mconf" taxon_infile_var = "MetaSim_bint.mprf" outfile_var = "MetaSim_bint-454.20e39f4c.fna" metasim = RunMetaSim(model_file=model_infile_var, no_reads=100, taxon_infile=taxon_infile_var, pdir=self.data_dir, wdir=self.working_dir, filename=outfile_var, check_exist=True) metasim.run() self.assertTrue(metasim.is_file_exist(self.working_dir + "MetaSim_bint-Empirical.fna")) # test for an additional run: able to append subsequent versions? metasim.run() self.assertTrue(metasim.is_file_exist(self.working_dir + "MetaSim_bint-Empirical.1.fna")) metasim.run() self.assertTrue(metasim.is_file_exist(self.working_dir + "MetaSim_bint-Empirical.2.fna")) os.remove(self.working_dir + "MetaSim_bint-Empirical.fna") os.remove(self.working_dir + "MetaSim_bint-Empirical.1.fna") os.remove(self.working_dir + "MetaSim_bint-Empirical.2.fna")