Mercurial > repos > yufei-luo > s_mart
comparison smart_toolShed/commons/core/parsing/test/Test_CrossSsrAndBesMappedByBlatToGff.py @ 0:e0f8dcca02ed
Uploaded S-MART tool. A toolbox manages RNA-Seq and ChIP-Seq data.
author | yufei-luo |
---|---|
date | Thu, 17 Jan 2013 10:52:14 -0500 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:e0f8dcca02ed |
---|---|
1 from commons.core.parsing.CrossSsrAndBesMappedByBlatToGff import CrossSsrAndBesMappedByBlatToGff | |
2 from commons.core.parsing.SsrParser import SsrParser | |
3 | |
4 import unittest | |
5 import os | |
6 | |
7 | |
8 class Test_CrossSsrAndBesMappedByBlatToGff(unittest.TestCase): | |
9 | |
10 | |
11 def test_createDictOfSsrParser(self): | |
12 obsDictSsrParser = {} | |
13 | |
14 ssrFileName = 'input_SSR_Resuts.tab' | |
15 SSRFile = open(ssrFileName, 'w') | |
16 SSRFile.write('BES_name\tBES_redundancy\tSSR_di/tri/tetranucleotide\tSSR_Motif\tSSR_Motif_number\tSSR_start\tSSR_end\tBES_size\n') | |
17 SSRFile.write('MRRE1H001A12RM1\t1\t4\tttta\t6\t272\t295\t724\n') | |
18 SSRFile.write('MRRE1H001B01RM1\t1\t3\taat\t8\t264\t287\t683\n') | |
19 SSRFile.write('MRRE1H001B07RM1\t1\t2\tta\t19\t153\t190\t734\n') | |
20 SSRFile.write('MRRE1H001B07RM1\t2\t2\taata\t25\t83\t90\t734\n') | |
21 SSRFile.close() | |
22 | |
23 iCrossSsrAndBesMappedByBlatToGff = CrossSsrAndBesMappedByBlatToGff() | |
24 iCrossSsrAndBesMappedByBlatToGff._inputFileSSR = ssrFileName | |
25 obsDictSsrParser = iCrossSsrAndBesMappedByBlatToGff.createDictOfSsrParser(obsDictSsrParser) | |
26 | |
27 SsrParser1 = SsrParser('MRRE1H001A12RM1', '1', '4', 'ttta', '6', '272', '295', '724') | |
28 SsrParser2 = SsrParser('MRRE1H001B01RM1', '1', '3', 'aat', '8', '264', '287', '683') | |
29 SsrParser3 = SsrParser('MRRE1H001B07RM1', '1', '2', 'ta', '19', '153', '190', '734') | |
30 SsrParser4 = SsrParser('MRRE1H001B07RM1', '2', '2', 'aata', '25', '83', '90', '734') | |
31 | |
32 expDictSsrParser = { | |
33 'MRRE1H001A12RM1': [SsrParser1], | |
34 'MRRE1H001B01RM1': [SsrParser2], | |
35 'MRRE1H001B07RM1': [SsrParser3, SsrParser4] | |
36 } | |
37 | |
38 self.assertEquals(expDictSsrParser, obsDictSsrParser) | |
39 os.remove(ssrFileName) | |
40 | |
41 def test_convertSSRPositionsToBlatPositions_strand_FW(self): | |
42 ssrPos = 75 | |
43 blatPosStart = 10501475 | |
44 blatPosEnd = 10501985 | |
45 strand = '+' | |
46 iCrossSsrAndBesMappedByBlatToGff = CrossSsrAndBesMappedByBlatToGff() | |
47 obsNewPos = iCrossSsrAndBesMappedByBlatToGff.convertSSRPositionsToChromPositions(ssrPos, blatPosStart, blatPosEnd, strand) | |
48 expNewPos = 10501549 | |
49 self.assertEquals(expNewPos, obsNewPos) | |
50 | |
51 def test_convertSSRPositionsToBlatPositions_strand_RV(self): | |
52 ssrPos = 75 | |
53 blatPosStart = 10501475 | |
54 blatPosEnd = 10501985 | |
55 strand = '-' | |
56 iCrossSsrAndBesMappedByBlatToGff = CrossSsrAndBesMappedByBlatToGff() | |
57 obsNewPos = iCrossSsrAndBesMappedByBlatToGff.convertSSRPositionsToChromPositions(ssrPos, blatPosStart, blatPosEnd, strand) | |
58 expNewPos = 10501911 | |
59 self.assertEquals(expNewPos, obsNewPos) | |
60 | |
61 def test_getSsrMotif(self): | |
62 ssrMotif = 'atg' | |
63 ssrNbMotif = 4 | |
64 iCrossSsrAndBesMappedByBlatToGff = CrossSsrAndBesMappedByBlatToGff() | |
65 obsSsrSeq = iCrossSsrAndBesMappedByBlatToGff.getSsrSeq(ssrMotif, ssrNbMotif) | |
66 expSsrSeq = 'atgatgatgatg' | |
67 self.assertEquals(expSsrSeq, obsSsrSeq) | |
68 | |
69 if __name__ == "__main__": | |
70 unittest.main() |