Mercurial > repos > yufei-luo > s_mart
comparison commons/core/parsing/test/Test_VarscanToVCF.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 from commons.core.parsing.VarscanToVCF import VarscanToVCF | |
3 | |
4 class Test_VarscanToVCF(unittest.TestCase): | |
5 | |
6 def setUp(self): | |
7 self._iVarscanToVCF = VarscanToVCF(doClean = True, verbosity = 2) | |
8 | |
9 # def test_convertVarscanLineToVCFRecord(self): | |
10 ## Chrom Position Ref Cons Reads1 Reads2 VarFreq Strands1 Strands2 Qual1 Qual2 Pvalue | |
11 ## chr1 10 C Y 1 1 50% 1 1 68 69 0.49999999999999994 | |
12 ## MapQual1 MapQual2 Reads1Plus Reads1Minus Reads2Plus Reads2Minus VarAllele | |
13 ## 1 1 1 0 1 0 T | |
14 # varscanLine = "chr1\t10\tC\tY\t1\t1\t50%\t1\t1\t68\t69\t0.49999999999999994\t1\t1\t1\t0\t1\t0\tT" | |
15 # obsRecord = self._iVarscanToVCF._convertVarscanLineToVCFRecord(varscanLine, 1) | |
16 # | |
17 # expInfo = {"AF": "50%", | |
18 # "DP": 2, | |
19 # "MQ": "1"} | |
20 # | |
21 # expRecord = vcf.model._Record("chr1", 10, "1", "C", "T", 3.010299957, ".", expInfo, ".", None) | |
22 ## CHROM, POS, ID, REF, ALT, QUAL, FILTER, INFO, FORMAT, sample_indexes, samples=None | |
23 # | |
24 # self.assertEqual(expRecord.ID, obsRecord.ID) | |
25 # self.assertEqual(expRecord.QUAL, obsRecord.QUAL) | |
26 # self.assertEqual(expRecord.FILTER, obsRecord.FILTER) | |
27 # self.assertEqual(expRecord.INFO, obsRecord.INFO) | |
28 # self.assertEqual(expRecord.FORMAT, obsRecord.FORMAT) | |
29 # self.assertEqual(expRecord, obsRecord) | |
30 | |
31 def test_convertVarscanLineToVCFLine(self): | |
32 # Chrom Position Ref Cons Reads1 Reads2 VarFreq Strands1 Strands2 Qual1 Qual2 Pvalue | |
33 # chr1 10 C Y 1 1 50% 1 1 68 69 0.49999999999999994 | |
34 # MapQual1 MapQual2 Reads1Plus Reads1Minus Reads2Plus Reads2Minus VarAllele | |
35 # 1 1 1 0 1 0 T | |
36 varscanLine = "chr1\t10\tC\tY\t1\t1\t50%\t1\t1\t68\t69\t0.49999999999999994\t1\t1\t1\t0\t1\t0\tT" | |
37 obsVCFLine = self._iVarscanToVCF._convertVarscanLineToVCFRecord(varscanLine, 1) | |
38 | |
39 expVCFLine = "chr1\t10\t.\tC\tT\t3.010299957\t.\tAF=0.5000;DP=2;RBQ=68;ABQ=69\n" | |
40 # CHROM, POS, ID, REF, ALT, QUAL, FILTER, INFO | |
41 self.assertEqual(expVCFLine, obsVCFLine) | |
42 | |
43 def test_convertVarscanLineToVCFLine_false_VarAllele(self): | |
44 varscanLine = "chr1\t10\tC\tY\t1\t1\t50%\t1\t1\t68\t69\t0.49999999999999994\t1\t1\t1\t0\t1\t0\tA" | |
45 obsVCFLine = self._iVarscanToVCF._convertVarscanLineToVCFRecord(varscanLine, 1) | |
46 | |
47 expVCFLine = "chr1\t10\t.\tC\tT\t3.010299957\t.\tAF=0.5000;DP=2;RBQ=68;ABQ=69\n" | |
48 # CHROM, POS, ID, REF, ALT, QUAL, FILTER, INFO | |
49 self.assertEqual(expVCFLine, obsVCFLine) | |
50 | |
51 def test_convertVarscanLineToVCFRecord_empty_line(self): | |
52 obsMsg = "" | |
53 try: | |
54 self._iVarscanToVCF._convertVarscanLineToVCFRecord("", 10) | |
55 except Exception as e: | |
56 obsMsg = e.msg | |
57 | |
58 self.assertEqual("This varscan line (l.10) is not complete", obsMsg) | |
59 | |
60 if __name__ == "__main__": | |
61 unittest.main() |