annotate commons/tools/tests/Test_GetSpecificTELibAccordingToAnnotation.py @ 18:94ab73e8a190

Uploaded
author m-zytnicki
date Mon, 29 Apr 2013 03:20:15 -0400
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
18
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
1 import os
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
2 import unittest
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
3 from commons.core.utils.FileUtils import FileUtils
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
4 from commons.core.sql.DbMySql import DbMySql
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
5 from commons.tools.GetSpecificTELibAccordingToAnnotation import GetSpecificTELibAccordingToAnnotation
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
6
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
7 class Test_GetSpecificTELibAccordingToAnnotation(unittest.TestCase):
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
8
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
9 def test_writeFastaFileFromGiveInfoTEAnnot(self):
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
10 self._iDb = DbMySql()
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
11 fileName = "GiveInfoTEannot.txt"
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
12 self._writeGiveInfoTEannotOutput(fileName)
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
13 tableName = "projectName_refTEs_chr_seq"
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
14 self._createConsensusTable(tableName)
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
15 expFileName = "consensusExp.fa"
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
16 self._writeExpConsensusFile(expFileName)
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
17 obsFileName = "%s.fa" % os.path.splitext(fileName)[0]
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
18 iGetTElib = GetSpecificTELibAccordingToAnnotation()
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
19 iGetTElib.setTableName(tableName)
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
20 iGetTElib.writeFastaFileFromGiveInfoTEAnnot(fileName)
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
21 self._iDb.dropTable(tableName)
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
22 self._iDb.close()
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
23 self.assertTrue(FileUtils.are2FilesIdentical(expFileName, obsFileName))
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
24 os.remove(fileName)
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
25 os.remove(expFileName)
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
26 os.remove(obsFileName)
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
27
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
28 def _writeGiveInfoTEannotOutput(self, fileName):
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
29 f = open(fileName, "w")
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
30 f.write("TE\tmaxLength\tmeanLength\tcovg\tfrags\tfullLgthFrags\tcopies\tfullLgthCopies\tmeanId\tsdId\tminId\tq25Id\tmedId\tq75Id\tmaxId\tmeanLgth\tsdLgth\tminLgth\tq25Lgth\tmedLgth\tq75Lgth\tmaxLgth\tmeanLgthPerc\tsdLgthPerc\tminLgthPerc\tq25LgthPerc\tmedLgthPerc\tq75LgthPerc\tmaxLgthPerc\n")
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
31 f.write("Atha_benchs-B-P66.38-Map20_classII-Helitron-incomp\t2150\t2150\t195657\t158\t49\t152\t52\t84.88\t8.75\t74.29\t77.16\t80.08\t96.40\t97.83\t1287.32\t776.47\t21\t570.00\t1320.50\t2077.00\t2272\t59.88\t36.11\t0.98\t26.51\t61.42\t96.60\t105.67\n")
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
32 f.write("Atha_benchs-B-R1047-Map6_classI-LINE-comp\t1653\t1653\t25423\t57\t4\t56\t4\t79.09\t8.21\t64.32\t73.63\t79.21\t83.65\t96.65\t453.98\t488.66\t29\t98.00\t244.00\t634.00\t1650\t27.46\t29.56\t1.75\t5.93\t14.76\t38.35\t99.82\n")
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
33 f.write("Atha_benchs-B-R1276-Map4_classII-Helitron-incomp\t1293\t1293\t24416\t48\t4\t47\t4\t80.31\t5.74\t75.14\t77.00\t78.25\t80.89\t99.46\t519.60\t419.01\t37\t171.00\t334.00\t838.00\t1296\t40.19\t32.41\t2.86\t13.23\t25.83\t64.81\t100.23\n")
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
34 f.close()
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
35
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
36 def _createConsensusTable(self, tableName):
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
37 fileName = "consensus.fa"
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
38 f = open(fileName, "w")
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
39 f.write(">Atha_benchs-B-P66.38-Map20_classII-Helitron-incomp\n")
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
40 f.write("ATGCTAGCTAGCT\n")
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
41 f.write(">Atha_benchs-B-R12-Map5_classII-Helitron-comp\n")
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
42 f.write("ATGCTAGCTAGCTATGCTAGCTAGCATGCTAGCTAGCTT\n")
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
43 f.write(">Atha_benchs-B-R1047-Map6_classI-LINE-comp\n")
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
44 f.write("ATGCTAGCTAGCT\n")
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
45 f.write(">Atha_benchs-B-G56-Map5_classII-Helitron-comp\n")
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
46 f.write("ATGCTAGCTAGCTATGCTAGCTAGCT\n")
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
47 f.write(">Atha_benchs-B-R1276-Map4_classII-Helitron-incomp\n")
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
48 f.write("ATGCTAGCTAGCATGCTAGCTAGCTATGCTAGCTAGCTATGCTAGCTAGCTT\n")
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
49 f.close()
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
50 self._iDb.createTable(tableName, "seq", fileName, True)
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
51 os.remove(fileName)
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
52
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
53 def _writeExpConsensusFile(self, fileName):
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
54 f = open(fileName, "w")
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
55 f.write(">Atha_benchs-B-P66.38-Map20_classII-Helitron-incomp\n")
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
56 f.write("ATGCTAGCTAGCT\n")
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
57 f.write(">Atha_benchs-B-R1047-Map6_classI-LINE-comp\n")
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
58 f.write("ATGCTAGCTAGCT\n")
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
59 f.write(">Atha_benchs-B-R1276-Map4_classII-Helitron-incomp\n")
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
60 f.write("ATGCTAGCTAGCATGCTAGCTAGCTATGCTAGCTAGCTATGCTAGCTAGCTT\n")
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
61 f.close()
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
62
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
63 if __name__ == "__main__":
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
64 unittest.main()