Mercurial > repos > yufei-luo > s_mart
comparison commons/launcher/tests/Test_F_LaunchBlastclust.py @ 18:94ab73e8a190
Uploaded
| author | m-zytnicki |
|---|---|
| date | Mon, 29 Apr 2013 03:20:15 -0400 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 17:b0e8584489e6 | 18:94ab73e8a190 |
|---|---|
| 1 import unittest | |
| 2 import os | |
| 3 from commons.launcher.LaunchBlastclust import LaunchBlastclust | |
| 4 from commons.core.utils.FileUtils import FileUtils | |
| 5 | |
| 6 class Test_F_LaunchBlastclust(unittest.TestCase): | |
| 7 | |
| 8 def setUp(self): | |
| 9 self._inputFileName = "DmelChr4_LTRharvest_expected_with_default_params.fa" | |
| 10 os.symlink("%s/Tools/%s" % (os.environ["REPET_DATA"], self._inputFileName), self._inputFileName) | |
| 11 self._outputFileName = "%s_Blastclust.fa" % self._inputFileName | |
| 12 self._outBlastclustFileName = "%s_blastclust.txt" % self._inputFileName | |
| 13 | |
| 14 def tearDown(self): | |
| 15 if os.path.exists(self._outputFileName): | |
| 16 os.remove(self._outputFileName) | |
| 17 if os.path.exists(self._outBlastclustFileName): | |
| 18 os.remove(self._outBlastclustFileName) | |
| 19 os.remove(self._inputFileName) | |
| 20 | |
| 21 def test_run(self): | |
| 22 iLaunchBlastclust = LaunchBlastclust(self._inputFileName, clean = True) | |
| 23 iLaunchBlastclust.run() | |
| 24 expFileName = "%s/Tools/DmelChr4_LTRharvest_Blastclust_expected.fa" % os.environ["REPET_DATA"] | |
| 25 self.assertTrue(FileUtils.are2FilesIdentical(expFileName, self._outputFileName)) | |
| 26 | |
| 27 def test_run_with_tweaked_params(self): | |
| 28 iLaunchBlastclust = LaunchBlastclust(self._inputFileName, clean = True) | |
| 29 iLaunchBlastclust.setBothSequences("F") | |
| 30 iLaunchBlastclust.setIdentityThreshold(0) | |
| 31 iLaunchBlastclust.setIsBlastToMap() | |
| 32 iLaunchBlastclust.run() | |
| 33 | |
| 34 faExpFileName = "%s/Tools/DmelChr4_LTRharvest_Blastclust_expected_with_tweaked_params.fa" % os.environ["REPET_DATA"] | |
| 35 mapExpFileName = "%s/Tools/DmelChr4_LTRharvest_Blastclust_expected_with_tweaked_params.map" % os.environ["REPET_DATA"] | |
| 36 | |
| 37 self.assertTrue(FileUtils.are2FilesIdentical(faExpFileName, self._outputFileName)) | |
| 38 self.assertTrue(FileUtils.are2FilesIdentical(mapExpFileName, "%s.map" % os.path.splitext(self._outputFileName)[0])) | |
| 39 | |
| 40 os.remove("%s.map" % os.path.splitext(self._outputFileName)[0]) | |
| 41 | |
| 42 def test_run_with_header_options(self): | |
| 43 inFileName = "dummyHeaderForTEdenovo.fa" | |
| 44 expFileName = "expDummyHeaderForTEdenovo.fa" | |
| 45 self._writeInputFile_header_options(inFileName) | |
| 46 self._writeExpFile_header_options(expFileName) | |
| 47 obsFileName = "%s_Blastclust.fa" % inFileName | |
| 48 | |
| 49 iLaunchBlastclust = LaunchBlastclust(inFileName, clean = True) | |
| 50 iLaunchBlastclust.setIsHeaderForTEdenovo(True) | |
| 51 iLaunchBlastclust.run() | |
| 52 | |
| 53 self.assertTrue(FileUtils.are2FilesIdentical(expFileName, obsFileName)) | |
| 54 | |
| 55 os.remove(inFileName) | |
| 56 os.remove(expFileName) | |
| 57 os.remove(obsFileName) | |
| 58 os.remove("%s_blastclust.txt" % inFileName) | |
| 59 | |
| 60 def test_run_as_script(self): | |
| 61 cmd = "LaunchBlastclust.py -i %s" % self._inputFileName | |
| 62 os.system(cmd) | |
| 63 expFileName = "%s/Tools/DmelChr4_LTRharvest_Blastclust_expected.fa" % os.environ["REPET_DATA"] | |
| 64 self.assertTrue(FileUtils.are2FilesIdentical(expFileName, self._outputFileName)) | |
| 65 | |
| 66 def _writeInputFile_header_options(self, inFileName): | |
| 67 f = open(inFileName,"w") | |
| 68 f.write(">DTX-incomp_DmelChr4-B-R9-Map3_reversed\n") | |
| 69 f.write("CATTAGATTCAAGGCATCATGGATCAGCACATTTACACAGATATCCTGGAAAATGTGATG\n") | |
| 70 f.write("CTGCCATATGCCGGGGATGAAATGCCGTTGGTTTGGACATTTCAACAGGATAACGATTCA\n") | |
| 71 f.write("AAACACACGAGCAAGAAAGCTTGAAAGTGGTTTGAGCAGAAATCGATCCGAGTAATGAAA\n") | |
| 72 f.write("TGGCCTGCTCTGTCATCCGACTTGAATCCAATCGAAAACCTTTGGGCGGACGTGGAAAAA\n") | |
| 73 f.write(">DTX-incomp_DmelChr4-B-R10-Map3_reversed\n") | |
| 74 f.write("CATTAGATTCAAGGCATCATGGATCAGCACATTTACACAGATATCCTGGAAAATGTGATG\n") | |
| 75 f.write("CTGCCATATGCCGGGGATGAAATGCCGTTGGTTTGGACATTTCAACAGGATAACGATTCA\n") | |
| 76 f.write("AAACACACGAGCAAGAAAGCTTGAAAGTGGTTTGAGCAGAAATCGATCCGAGTAATGAAA\n") | |
| 77 f.write("TGGCCTGCTCTGTCATCCGACTTGAATCCAATCGAAAACCTTTGGGCGGACGTGGAAAAA\n") | |
| 78 f.write(">PotentialHostGene-chim_DmelChr4-B-R4-Map5_reversed\n") | |
| 79 f.write("TACCAAAGACACTAGAATAACAAGATGCGTAACGCCATACGATTTTTTGGCACACGATTT\n") | |
| 80 f.write("TTTCGCCGTGGCTCTAGAGGTGGCTCCAGGCTCTCTCGAATTTTTGTTAGAGAGCGAGAG\n") | |
| 81 f.write("AGCGGAGAGCGCTACAGCGAACAGCTCTTTTCAACGCATAAAGTGATAGCAGACAACTGT\n") | |
| 82 f.close() | |
| 83 | |
| 84 def _writeExpFile_header_options(self, expFileName): | |
| 85 f = open(expFileName,"w") | |
| 86 f.write(">DTX-incomp_Blc1_DmelChr4-B-R9-Map3_reversed\n") | |
| 87 f.write("CATTAGATTCAAGGCATCATGGATCAGCACATTTACACAGATATCCTGGAAAATGTGATG\n") | |
| 88 f.write("CTGCCATATGCCGGGGATGAAATGCCGTTGGTTTGGACATTTCAACAGGATAACGATTCA\n") | |
| 89 f.write("AAACACACGAGCAAGAAAGCTTGAAAGTGGTTTGAGCAGAAATCGATCCGAGTAATGAAA\n") | |
| 90 f.write("TGGCCTGCTCTGTCATCCGACTTGAATCCAATCGAAAACCTTTGGGCGGACGTGGAAAAA\n") | |
| 91 f.write(">DTX-incomp_Blc1_DmelChr4-B-R10-Map3_reversed\n") | |
| 92 f.write("CATTAGATTCAAGGCATCATGGATCAGCACATTTACACAGATATCCTGGAAAATGTGATG\n") | |
| 93 f.write("CTGCCATATGCCGGGGATGAAATGCCGTTGGTTTGGACATTTCAACAGGATAACGATTCA\n") | |
| 94 f.write("AAACACACGAGCAAGAAAGCTTGAAAGTGGTTTGAGCAGAAATCGATCCGAGTAATGAAA\n") | |
| 95 f.write("TGGCCTGCTCTGTCATCCGACTTGAATCCAATCGAAAACCTTTGGGCGGACGTGGAAAAA\n") | |
| 96 f.write(">PotentialHostGene-chim_Blc2_DmelChr4-B-R4-Map5_reversed\n") | |
| 97 f.write("TACCAAAGACACTAGAATAACAAGATGCGTAACGCCATACGATTTTTTGGCACACGATTT\n") | |
| 98 f.write("TTTCGCCGTGGCTCTAGAGGTGGCTCCAGGCTCTCTCGAATTTTTGTTAGAGAGCGAGAG\n") | |
| 99 f.write("AGCGGAGAGCGCTACAGCGAACAGCTCTTTTCAACGCATAAAGTGATAGCAGACAACTGT\n") | |
| 100 f.close() | |
| 101 | |
| 102 if __name__ == "__main__": | |
| 103 unittest.main() |
