comparison commons/core/parsing/test/Test_VarscanHit_v2_2_8.py @ 6:769e306b7933

Change the repository level.
author yufei-luo
date Fri, 18 Jan 2013 04:54:14 -0500
parents
children
comparison
equal deleted inserted replaced
5:ea3082881bf8 6:769e306b7933
1 import unittest
2 from commons.core.checker.CheckerException import CheckerException
3 from commons.core.parsing.VarscanHit_v2_2_8 import VarscanHit_v2_2_8
4 from commons.core.parsing.VarscanHit import VarscanHit
5
6 class Test_VarscanHit_v2_2_8(unittest.TestCase):
7
8 def test_setAttributesFromString(self):
9 line = "chr1\t1804\tT\tC\t0\t1\t100%\t0\t1\t0\t53\t0.98\t0\t1\t0\t0\t1\t0\tC\n"
10
11 expChrom = "chr1"
12 expPosition = "1804"
13 expRef = "T"
14 expCns = "C"
15 expReadsRef = "0"
16 expReadsVar = "1"
17 expVarFreq = "100%"
18 expStrandsRef = "0"
19 expStrandsVar = "1"
20 expQualRef = "0"
21 expQualVar = "53"
22 expPValue = "0.98"
23 expMapQualRef = "0"
24 expMapQualVar = "1"
25 expReadsRefPlus = "0"
26 expReadsRefMinus = "0"
27 expReadsVarPlus = "1"
28 expReadsVarMinus = "0"
29 expVar = "C"
30
31 varscanHit = VarscanHit_v2_2_8()
32 varscanHit.setAttributesFromString(line)
33
34 obsChrom = varscanHit.getChrom()
35 obsPosition = varscanHit.getPosition()
36 obsRef = varscanHit.getRef()
37 obsCns = varscanHit.getCns()
38 obsReadsRef = varscanHit.getReadsRef()
39 obsReadsVar = varscanHit.getReadsVar()
40 obsVarFreq = varscanHit.getVarFreq()
41 obsStrandsRef = varscanHit.getStrandsRef()
42 obsStrandsVar = varscanHit.getStrandsVar()
43 obsQualRef = varscanHit.getQualRef()
44 obsQualVar = varscanHit.getQualVar()
45 obsPValue = varscanHit.getPValue()
46 obsMapQualRef = varscanHit.getMapQualRef()
47 obsMapQualVar = varscanHit.getMapQualVar()
48 obsReadsRefPlus = varscanHit.getReadsRefPlus()
49 obsReadsRefMinus = varscanHit.getReadsRefMinus()
50 obsReadsVarPlus = varscanHit.getReadsVarPlus()
51 obsReadsVarMinus = varscanHit.getReadsVarMinus()
52 obsVar = varscanHit.getVar()
53
54 self.assertEquals(expChrom, obsChrom)
55 self.assertEquals(expPosition, obsPosition)
56 self.assertEquals(expRef, obsRef)
57 self.assertEquals(expCns, obsCns)
58 self.assertEquals(expReadsRef, obsReadsRef)
59 self.assertEquals(expReadsVar, obsReadsVar)
60 self.assertEquals(expVarFreq, obsVarFreq)
61 self.assertEquals(expStrandsRef, obsStrandsRef)
62 self.assertEquals(expStrandsVar, obsStrandsVar)
63 self.assertEquals(expQualRef, obsQualRef)
64 self.assertEquals(expQualVar, obsQualVar)
65 self.assertEquals(expPValue, obsPValue)
66 self.assertEquals(expMapQualRef, obsMapQualRef)
67 self.assertEquals(expMapQualVar, obsMapQualVar)
68 self.assertEquals(expReadsRefPlus, obsReadsRefPlus)
69 self.assertEquals(expReadsRefMinus, obsReadsRefMinus)
70 self.assertEquals(expReadsVarPlus, obsReadsVarPlus)
71 self.assertEquals(expReadsVarMinus, obsReadsVarMinus)
72 self.assertEquals(expVar, obsVar)
73
74 def test_setAttributesFromString_empty_chrom(self):
75 line = "\t1804\tT\tC\t0\t1\t100%\t0\t1\t0\t53\t0.98\t0\t1\t0\t0\t1\t0\tC\n"
76 varscanHit = VarscanHit_v2_2_8()
77 try :
78 varscanHit.setAttributesFromString(line)
79 except CheckerException, e:
80 checkerExceptionInstance = e
81 expMessage = "The field Chrom is empty in varscan file in line "
82 obsMessage = checkerExceptionInstance.msg
83 self.assertEquals(expMessage, obsMessage)
84
85 def test_setAttributesFromString_less_than_19_fields(self):
86 line = "chr1\t1804\tT\tC\t0\t1\t100%\t0\t1\t53\t0.98\t0\t1\t0\t0\t1\t0\tC\n"
87 varscanHit = VarscanHit_v2_2_8()
88 try :
89 varscanHit.setAttributesFromString(line)
90 except CheckerException, e:
91 checkerExceptionInstance = e
92 expMessage = "This varscan line (l.) is not complete"
93 obsMessage = checkerExceptionInstance.msg
94 self.assertEquals(expMessage, obsMessage)
95
96 def test_setAttributes(self):
97 lResults = ['chr1', '1804', 'T', 'C', '0', '1', '100%', '0', '1', '0', '53', '0.98', '0', '1', '0', '0', '1', '0', 'C']
98 lineNumber = 1
99
100 expChrom = "chr1"
101 expPosition = "1804"
102 expRef = "T"
103 expCns = "C"
104 expReadsRef = "0"
105 expReadsVar = "1"
106 expVarFreq = "100%"
107 expStrandsRef = "0"
108 expStrandsVar = "1"
109 expQualRef = "0"
110 expQualVar = "53"
111 expPValue = "0.98"
112 expMapQualRef = "0"
113 expMapQualVar = "1"
114 expReadsRefPlus = "0"
115 expReadsRefMinus = "0"
116 expReadsVarPlus = "1"
117 expReadsVarMinus = "0"
118 expVar = "C"
119
120 varscanHit = VarscanHit_v2_2_8()
121 varscanHit.setAttributes(lResults, lineNumber)
122
123 obsChrom = varscanHit.getChrom()
124 obsPosition = varscanHit.getPosition()
125 obsRef = varscanHit.getRef()
126 obsCns = varscanHit.getCns()
127 obsReadsRef = varscanHit.getReadsRef()
128 obsReadsVar = varscanHit.getReadsVar()
129 obsVarFreq = varscanHit.getVarFreq()
130 obsStrandsRef = varscanHit.getStrandsRef()
131 obsStrandsVar = varscanHit.getStrandsVar()
132 obsQualRef = varscanHit.getQualRef()
133 obsQualVar = varscanHit.getQualVar()
134 obsPValue = varscanHit.getPValue()
135 obsMapQualRef = varscanHit.getMapQualRef()
136 obsMapQualVar = varscanHit.getMapQualVar()
137 obsReadsRefPlus = varscanHit.getReadsRefPlus()
138 obsReadsRefMinus = varscanHit.getReadsRefMinus()
139 obsReadsVarPlus = varscanHit.getReadsVarPlus()
140 obsReadsVarMinus = varscanHit.getReadsVarMinus()
141 obsVar = varscanHit.getVar()
142
143 self.assertEquals(expChrom, obsChrom)
144 self.assertEquals(expPosition, obsPosition)
145 self.assertEquals(expRef, obsRef)
146 self.assertEquals(expCns, obsCns)
147 self.assertEquals(expReadsRef, obsReadsRef)
148 self.assertEquals(expReadsVar, obsReadsVar)
149 self.assertEquals(expVarFreq, obsVarFreq)
150 self.assertEquals(expStrandsRef, obsStrandsRef)
151 self.assertEquals(expStrandsVar, obsStrandsVar)
152 self.assertEquals(expQualRef, obsQualRef)
153 self.assertEquals(expQualVar, obsQualVar)
154 self.assertEquals(expPValue, obsPValue)
155 self.assertEquals(expMapQualRef, obsMapQualRef)
156 self.assertEquals(expMapQualVar, obsMapQualVar)
157 self.assertEquals(expReadsRefPlus, obsReadsRefPlus)
158 self.assertEquals(expReadsRefMinus, obsReadsRefMinus)
159 self.assertEquals(expReadsVarPlus, obsReadsVarPlus)
160 self.assertEquals(expReadsVarMinus, obsReadsVarMinus)
161 self.assertEquals(expVar, obsVar)
162
163 def test_setAttributes_empty_chrom(self):
164 lResults = ['', '1804', 'T', 'C', '0', '1', '100%', '0', '1', '0', '53', '0.98', '0', '1', '0', '0', '1', '0', 'C']
165 lineNumber = 1
166
167 varscanHit = VarscanHit_v2_2_8()
168 checkerExceptionInstance = None
169 try:
170 varscanHit.setAttributes(lResults, lineNumber)
171 except CheckerException, e:
172 checkerExceptionInstance = e
173
174 expMessage = "The field Chrom is empty in varscan file in line 1"
175 obsMessage = checkerExceptionInstance.msg
176
177 self.assertEquals(expMessage, obsMessage)
178
179 def test_setAttributes_empty_position(self):
180 lResults = ['chr1', '', 'T', 'C', '0', '1', '100%', '0', '1', '0', '53', '0.98', '0', '1', '0', '0', '1', '0', 'C']
181 lineNumber = 1
182
183 varscanHit = VarscanHit_v2_2_8()
184 checkerExceptionInstance = None
185 try:
186 varscanHit.setAttributes(lResults, lineNumber)
187 except CheckerException, e:
188 checkerExceptionInstance = e
189
190 expMessage = "The field Position is empty in varscan file in line 1"
191 obsMessage = checkerExceptionInstance.msg
192
193 self.assertEquals(expMessage, obsMessage)
194
195 def test_setAttributes_empty_ref(self):
196 lResults = ['chr1', '1000', '', 'C', '0', '1', '100%', '0', '1', '0', '53', '0.98', '0', '1', '0', '0', '1', '0', 'C']
197 lineNumber = 1
198
199 varscanHit = VarscanHit_v2_2_8()
200 checkerExceptionInstance = None
201 try:
202 varscanHit.setAttributes(lResults, lineNumber)
203 except CheckerException, e:
204 checkerExceptionInstance = e
205
206 expMessage = "The field Ref is empty in varscan file in line 1"
207 obsMessage = checkerExceptionInstance.msg
208
209 self.assertEquals(expMessage, obsMessage)
210
211 def test_setAttributes_empty_cns(self):
212 lResults = ['chr1', '1000', 'T', '', '0', '1', '100%', '0', '1', '0', '53', '0.98', '0', '1', '0', '0', '1', '0', 'C']
213 lineNumber = 1
214
215 varscanHit = VarscanHit_v2_2_8()
216 checkerExceptionInstance = None
217 try:
218 varscanHit.setAttributes(lResults, lineNumber)
219 except CheckerException, e:
220 checkerExceptionInstance = e
221
222 expMessage = "The field Cons is empty in varscan file in line 1"
223 obsMessage = checkerExceptionInstance.msg
224
225 self.assertEquals(expMessage, obsMessage)
226
227 def test_setAttributes_empty_var(self):
228 lResults = ['chr1', '1000', 'T', 'C', '0', '1', '100%', '0', '1', '0', '53', '0.98', '0', '1', '0', '0', '1', '0', '']
229 lineNumber = 1
230
231 varscanHit = VarscanHit_v2_2_8()
232 checkerExceptionInstance = None
233 try:
234 varscanHit.setAttributes(lResults, lineNumber)
235 except CheckerException, e:
236 checkerExceptionInstance = e
237
238 expMessage = "The field varAllele is empty in varscan file in line 1"
239 obsMessage = checkerExceptionInstance.msg
240
241 self.assertEquals(expMessage, obsMessage)
242
243 def test__eq__notEquals(self):
244 varscanHit1 = VarscanHit_v2_2_8()
245 varscanHit1.setChrom('C02HBa0291P19_LR48')
246 varscanHit1.setPosition('32')
247 varscanHit1.setRef('C')
248 varscanHit1.setCns('T')
249 varscanHit1.setVar('T')
250
251 varscanHit2 = VarscanHit_v2_2_8()
252 varscanHit2.setChrom('C02HBa0291P19_LR48')
253 varscanHit2.setPosition('34')
254 varscanHit2.setRef('A')
255 varscanHit2.setCns('T')
256 varscanHit2.setVar('T')
257
258 self.assertFalse(varscanHit1 == varscanHit2)
259
260 def test__eq__Equals(self):
261 varscanHit1 = VarscanHit_v2_2_8()
262 varscanHit1.setChrom('C02HBa0291P19_LR48')
263 varscanHit1.setPosition('34')
264 varscanHit1.setRef('A')
265 varscanHit1.setCns('T')
266 varscanHit1.setVar('T')
267
268 varscanHit2 = VarscanHit_v2_2_8()
269 varscanHit2.setChrom('C02HBa0291P19_LR48')
270 varscanHit2.setPosition('34')
271 varscanHit2.setRef('A')
272 varscanHit2.setCns('T')
273 varscanHit2.setVar('T')
274
275 self.assertTrue(varscanHit1 == varscanHit2)
276
277 def test_convertVarscanHit_v2_2_8_To_VarscanHit(self):
278 line = "chr1\t1804\tT\tC\t0\t1\t100%\t0\t1\t0\t53\t0.98\t0\t1\t0\t0\t1\t0\tC\n"
279 iVarscanHit_v2_2_8_WithTag = VarscanHit_v2_2_8()
280 iVarscanHit_v2_2_8_WithTag.setAttributesFromString(line)
281 obsVarcanHit_WithTag = iVarscanHit_v2_2_8_WithTag.convertVarscanHit_v2_2_8_To_VarscanHit()
282
283 line = "chr1\t1804\tT\tC\t0\t1\t100%\t0\t1\t0\t53\t0.98\n"
284 expVarcanHit_WithTag = VarscanHit()
285 expVarcanHit_WithTag.setAttributesFromString(line)
286
287 self.assertEquals(expVarcanHit_WithTag, obsVarcanHit_WithTag)
288
289 if __name__ == "__main__":
290 unittest.main()