Mercurial > repos > yufei-luo > s_mart
comparison commons/launcher/tests/Test_F_LaunchRepeatMasker.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.core.utils.FileUtils import FileUtils | |
4 from commons.launcher.LaunchRepeatMasker import LaunchRepeatMasker | |
5 | |
6 | |
7 class Test_F_RepeatMasker(unittest.TestCase): | |
8 | |
9 def setUp(self): | |
10 self._queryFastaFileName = "query.fa" | |
11 self._libFastaFileName = "lib.fa" | |
12 self._expMaskedQueryFileName = "expMaskedQuery.fa" | |
13 self._obsMaskedQueryFileName = "%s.masked" % self._queryFastaFileName | |
14 | |
15 self._expCatFileName = "expCat.fa" | |
16 self._obsCatFileName = "%s.cat" % self._queryFastaFileName | |
17 | |
18 self._writeInputFastaFiles() | |
19 self._writeExpMaskedQueryFile() | |
20 self._writeExpCatFile() | |
21 | |
22 def tearDown(self): | |
23 os.remove(self._queryFastaFileName) | |
24 os.remove(self._libFastaFileName) | |
25 os.remove(self._expMaskedQueryFileName) | |
26 os.remove(self._obsMaskedQueryFileName) | |
27 os.remove(self._expCatFileName) | |
28 os.remove(self._obsCatFileName) | |
29 os.remove("%s.tbl" % self._queryFastaFileName) | |
30 os.remove("%s.out" % self._queryFastaFileName) | |
31 os.remove("%s.ori.out" % self._queryFastaFileName) | |
32 | |
33 def test_run(self): | |
34 ilauncher = LaunchRepeatMasker(self._queryFastaFileName, self._libFastaFileName,verbosity=1 ) | |
35 ilauncher.run() | |
36 self.assertTrue(FileUtils.are2FilesIdentical(self._obsMaskedQueryFileName, self._expMaskedQueryFileName)) | |
37 | |
38 def test_run_as_script(self): | |
39 #FIXME : change path to launcher | |
40 cmd = 'python %s/commons/launcher/LaunchRepeatMasker.py -q %s -l %s' % (os.environ["REPET_PATH"],self._queryFastaFileName, self._libFastaFileName) | |
41 os.system(cmd) | |
42 self.assertTrue(FileUtils.are2FilesIdentical(self._obsMaskedQueryFileName, self._expMaskedQueryFileName)) | |
43 | |
44 def _writeInputFastaFiles(self): | |
45 InputFile = open(self._queryFastaFileName, 'w') | |
46 InputFile.write('>Bovc-tA2:classI:SINE:SINE2/tRNA\n') | |
47 InputFile.write('GGGCTTCCCTGGTAGCTCAGCTGGTAAAGAATCCGCCTGCAATGCAGGAGACCCCGGTTC\n') | |
48 InputFile.write('GATTCCTGGGTCGGGAAGATCCCCTGGAGAAGGGATAGGCTACCCACTCCAGTATTCTTG\n') | |
49 InputFile.write('GGCTTCCCTGGTGGCTCAGACGGTAAAGAATCCGCCTGCAATGCGGGAGACCTGGGTTCG\n') | |
50 InputFile.write('ATCCCTGGGTTGGGAAGATCCCCTGGAGGAGGGCATGGCAACCCACTCCAGTATTCTTGC\n') | |
51 InputFile.write('CTGGAGAATCCCCATGGACAGAGGAGCCTGGCGGGCTACAGTCCATGGGGTCGCAAAGAG\n') | |
52 InputFile.write('TCGGACACGACTGAGCGACTAAGCACAGCACAGGTCTTTCCTGCCACTTACCTCCTTCCA\n') | |
53 InputFile.write('GGGCGGCACGGTGGTGTGGTGGTTAGCACTGTTGCCTCACAGCAAGAAGGCCCCGGGTTC\n') | |
54 InputFile.write('GATCCCCGGTTGGGACTGAGGCTGGGGACTTTCTGTGTGGAGTTTGCATGTTCTCCCTGT\n') | |
55 InputFile.write('GCCTGCGTGGGTTCTCTCCGGGTACTCCGGCTTCCTCCCACAGTCCAAAGACATGCATGA\n') | |
56 InputFile.write('TTGGGGATTAGGCTAATTGGAAACTCTAAAATTGCCCGTAGGTGTGAGTGTGAGAGAGAA\n') | |
57 InputFile.write('TGGTTGTTTGTCTATATGTGTTAGCCCTGCGATTGACTGGCGTCCAGTCCAGGGTGTACC\n') | |
58 InputFile.write('CTGCCTCCGCCCATTGTGCTGGGATAGGCTCCAGTCCCCCCGCGACCCTCAGTGGAGGAA\n') | |
59 InputFile.write('GGGCAGCCTGGGTGGCTCAGCGGTTTAGCGCCTGCCTTTGGCCCAGGGCGTGATCCTGGA\n') | |
60 InputFile.write('GACCCGGGATCGAGTCCCACATCGGGCTCCCTGCATGGAGCCTGCTTCTCCCTCTGCCTG\n') | |
61 InputFile.write('GGGGAGGGTATAGCTCAGTGGTAGAGCGCATGCTTAGCATGCACGAGGTCCTGGGTTCAA\n') | |
62 InputFile.write('TCCCCAGTACCTCCATTAAAAATAAATAAATAAATAAACCTAATTACCTCCCCCACCAAA\n') | |
63 InputFile.write('AAAAAAA\n') | |
64 InputFile.close() | |
65 | |
66 InputFile = open(self._libFastaFileName, 'w') | |
67 InputFile.write('>RefLib\n') | |
68 InputFile.write('GGGCGGCACGGTGGTGTGGTGGTTAGCACTGTTGCCTCACAGCAAGAAGGCCCCGGGTTC\n') | |
69 InputFile.write('GATCCCCGGTTGGGACTGAGGCTGGGGACTTTCTGTGTGGAGTTTGCATGTTCTCCCTGT\n') | |
70 InputFile.close() | |
71 | |
72 def _writeExpMaskedQueryFile(self): | |
73 f = open(self._expMaskedQueryFileName, 'w') | |
74 f.write('>Bovc-tA2:classI:SINE:SINE2/tRNA\n') | |
75 f.write('GGGCTTCCCTGGTAGCTCAGCTGGTAAAGAATCCGCCTGCAATGCAGGAG\n') | |
76 f.write('ACCCCGGTTCGATTCCTGGGTCGGGAAGATCCCCTGGAGAAGGGATAGGC\n') | |
77 f.write('TACCCACTCCAGTATTCTTGGGCTTCCCTGGTGGCTCAGACGGTAAAGAA\n') | |
78 f.write('TCCGCCTGCAATGCGGGAGACCTGGGTTCGATCCCTGGGTTGGGAAGATC\n') | |
79 f.write('CCCTGGAGGAGGGCATGGCAACCCACTCCAGTATTCTTGCCTGGAGAATC\n') | |
80 f.write('CCCATGGACAGAGGAGCCTGGCGGGCTACAGTCCATGGGGTCGCAAAGAG\n') | |
81 f.write('TCGGACACGACTGAGCGACTAAGCACAGCACAGGTCTTTCCTGCCACTTA\n') | |
82 f.write('CCTCCTTCCANNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN\n') | |
83 f.write('NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN\n') | |
84 f.write('NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNGCCTGCGTGGGTTCTCTCCG\n') | |
85 f.write('GGTACTCCGGCTTCCTCCCACAGTCCAAAGACATGCATGATTGGGGATTA\n') | |
86 f.write('GGCTAATTGGAAACTCTAAAATTGCCCGTAGGTGTGAGTGTGAGAGAGAA\n') | |
87 f.write('TGGTTGTTTGTCTATATGTGTTAGCCCTGCGATTGACTGGCGTCCAGTCC\n') | |
88 f.write('AGGGTGTACCCTGCCTCCGCCCATTGTGCTGGGATAGGCTCCAGTCCCCC\n') | |
89 f.write('CGCGACCCTCAGTGGAGGAAGGGCAGCCTGGGTGGCTCAGCGGTTTAGCG\n') | |
90 f.write('CCTGCCTTTGGCCCAGGGCGTGATCCTGGAGACCCGGGATCGAGTCCCAC\n') | |
91 f.write('ATCGGGCTCCCTGCATGGAGCCTGCTTCTCCCTCTGCCTGGGGGAGGGTA\n') | |
92 f.write('TAGCTCAGTGGTAGAGCGCATGCTTAGCATGCACGAGGTCCTGGGTTCAA\n') | |
93 f.write('TCCCCAGTACCTCCATTAAAAATAAATAAATAAATAAACCTAATTACCTC\n') | |
94 f.write('CCCCACCAAAAAAAAAA\n') | |
95 f.close() | |
96 | |
97 def _writeExpCatFile(self): | |
98 f = open(self._expCatFileName, 'w') | |
99 f.write('958 0.00 0.00 0.00 Bovc-tA2:classI:SINE:SINE2/tRNA 361 480 (487) RefLib 1 120 (0) 5\n') | |
100 f.write('## Total Sequences: 1\n') | |
101 f.write('## Total Length: 967\n') | |
102 f.write('## Total NonMask ( excluding >20bp runs of N/X bases ): 967\n') | |
103 f.write('## Total NonSub ( excluding all non ACGT bases ):967\n') | |
104 f.write('RepeatMasker version open-3.2.6 , default mode\n') | |
105 f.write('run with blastp version 2.0MP-WashU\n') | |
106 f.write('RepBase Update 20080801, RM database version 20080801\n') | |
107 f.close() | |
108 | |
109 if __name__ == "__main__": | |
110 unittest.main() |