6
|
1 import unittest
|
|
2 from commons.core.utils.FileUtils import FileUtils
|
|
3 import os
|
|
4 from commons.core.parsing.PalsToAlign import PalsToAlign
|
|
5
|
|
6 class Test_PalsToAlign(unittest.TestCase):
|
|
7
|
|
8 def setUp(self):
|
|
9 self._palsFileName = "input.gff"
|
|
10 self._expAlignFileName = "file.align"
|
|
11 self._obsAlignFileName = "output.align"
|
|
12
|
|
13 def tearDown(self):
|
|
14 os.remove(self._palsFileName)
|
|
15 os.remove(self._expAlignFileName)
|
|
16 os.remove(self._obsAlignFileName)
|
|
17
|
|
18 def testRun(self):
|
|
19 self._writePalsFile(self._palsFileName)
|
|
20 self._writeExpAlignFile(self._expAlignFileName)
|
|
21
|
|
22 iPalsToAlign = PalsToAlign(self._palsFileName,self._obsAlignFileName)
|
|
23 iPalsToAlign.run()
|
|
24
|
|
25 self.assertTrue(FileUtils.are2FilesIdentical(self._expAlignFileName, self._obsAlignFileName))
|
|
26
|
|
27
|
|
28 def _writePalsFile(self, fileName):
|
|
29 f = open(fileName, "w")
|
|
30 f.write("chunk01\tpals\thit\t32290\t32583\t252\t+\t.\tTarget chunk02 28975 29268; maxe 0.035\n")
|
|
31 f.write("chunk01\tpals\thit\t28975\t29268\t252\t+\t.\tTarget chunk02 32290 32583; maxe 0.035\n")
|
|
32 f.write("chunk01\tpals\thit\t65932\t66032\t68\t+\t.\tTarget chunk02 59293 59395; maxe 0.085\n")
|
|
33 f.close()
|
|
34
|
|
35 def _writeExpAlignFile(self, fileName):
|
|
36 f = open(fileName, "w")
|
|
37 f.write("chunk01\t28975\t29268\tchunk02\t32290\t32583\t0.0\t252\t96.5\n")
|
|
38 f.write("chunk01\t32290\t32583\tchunk02\t28975\t29268\t0.0\t252\t96.5\n")
|
|
39 f.write("chunk01\t65932\t66032\tchunk02\t59293\t59395\t0.0\t68\t91.5\n")
|
|
40 f.close()
|
|
41
|
|
42 if __name__ == "__main__":
|
|
43 unittest.main() |