Mercurial > repos > yufei-luo > s_mart
diff commons/core/parsing/test/Test_VarscanHit_v2_2_8_WithTag.py @ 6:769e306b7933
Change the repository level.
author | yufei-luo |
---|---|
date | Fri, 18 Jan 2013 04:54:14 -0500 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/commons/core/parsing/test/Test_VarscanHit_v2_2_8_WithTag.py Fri Jan 18 04:54:14 2013 -0500 @@ -0,0 +1,300 @@ +import unittest +from commons.core.checker.CheckerException import CheckerException +from commons.core.parsing.VarscanHit_v2_2_8_WithTag import VarscanHit_v2_2_8_WithTag +from commons.core.parsing.VarscanHit_WithTag import VarscanHit_WithTag + +class Test_VarscanHit_v2_2_8_WithTag(unittest.TestCase): + + def test_setAttributesFromString(self): + line = "chr1\t1804\tT\tC\t0\t1\t100%\t0\t1\t0\t53\t0.98\t0\t1\t0\t0\t1\t0\tC\tEspeceA\n" + + expChrom = "chr1" + expPosition = "1804" + expRef = "T" + expCns = "C" + expReadsRef = "0" + expReadsVar = "1" + expVarFreq = "100%" + expStrandsRef = "0" + expStrandsVar = "1" + expQualRef = "0" + expQualVar = "53" + expPValue = "0.98" + expMapQualRef = "0" + expMapQualVar = "1" + expReadsRefPlus = "0" + expReadsRefMinus = "0" + expReadsVarPlus = "1" + expReadsVarMinus = "0" + expVar = "C" + expTag = "EspeceA" + + varscanHit = VarscanHit_v2_2_8_WithTag() + varscanHit.setAttributesFromString(line) + + obsChrom = varscanHit.getChrom() + obsPosition = varscanHit.getPosition() + obsRef = varscanHit.getRef() + obsCns = varscanHit.getCns() + obsReadsRef = varscanHit.getReadsRef() + obsReadsVar = varscanHit.getReadsVar() + obsVarFreq = varscanHit.getVarFreq() + obsStrandsRef = varscanHit.getStrandsRef() + obsStrandsVar = varscanHit.getStrandsVar() + obsQualRef = varscanHit.getQualRef() + obsQualVar = varscanHit.getQualVar() + obsPValue = varscanHit.getPValue() + obsMapQualRef = varscanHit.getMapQualRef() + obsMapQualVar = varscanHit.getMapQualVar() + obsReadsRefPlus = varscanHit.getReadsRefPlus() + obsReadsRefMinus = varscanHit.getReadsRefMinus() + obsReadsVarPlus = varscanHit.getReadsVarPlus() + obsReadsVarMinus = varscanHit.getReadsVarMinus() + obsVar = varscanHit.getVar() + obsTag = varscanHit.getTag() + + self.assertEquals(expChrom, obsChrom) + self.assertEquals(expPosition, obsPosition) + self.assertEquals(expRef, obsRef) + self.assertEquals(expCns, obsCns) + self.assertEquals(expReadsRef, obsReadsRef) + self.assertEquals(expReadsVar, obsReadsVar) + self.assertEquals(expVarFreq, obsVarFreq) + self.assertEquals(expStrandsRef, obsStrandsRef) + self.assertEquals(expStrandsVar, obsStrandsVar) + self.assertEquals(expQualRef, obsQualRef) + self.assertEquals(expQualVar, obsQualVar) + self.assertEquals(expPValue, obsPValue) + self.assertEquals(expMapQualRef, obsMapQualRef) + self.assertEquals(expMapQualVar, obsMapQualVar) + self.assertEquals(expReadsRefPlus, obsReadsRefPlus) + self.assertEquals(expReadsRefMinus, obsReadsRefMinus) + self.assertEquals(expReadsVarPlus, obsReadsVarPlus) + self.assertEquals(expReadsVarMinus, obsReadsVarMinus) + self.assertEquals(expVar, obsVar) + self.assertEquals(expTag, obsTag) + + def test_setAttributesFromString_empty_chrom(self): + line = "\t1804\tT\tC\t0\t1\t100%\t0\t1\t0\t53\t0.98\t0\t1\t0\t0\t1\t0\tC\tEspeceA\n" + varscanHit = VarscanHit_v2_2_8_WithTag() + try : + varscanHit.setAttributesFromString(line) + except CheckerException, e: + checkerExceptionInstance = e + expMessage = "The field Chrom is empty in varscan file in line " + obsMessage = checkerExceptionInstance.msg + self.assertEquals(expMessage, obsMessage) + + def test_setAttributesFromString_less_than_20_fields(self): + line = "chr1\t1804\tT\tC\t0\t1\t100%\t0\t1\t53\t0.98\t0\t1\t0\t0\t1\t0\tC\tEspeceA\n" + varscanHit = VarscanHit_v2_2_8_WithTag() + try : + varscanHit.setAttributesFromString(line) + except CheckerException, e: + checkerExceptionInstance = e + expMessage = "This varscan line (l.) is not complete" + obsMessage = checkerExceptionInstance.msg + self.assertEquals(expMessage, obsMessage) + + def test_setAttributes(self): + lResults = ['chr1', '1804', 'T', 'C', '0', '1', '100%', '0', '1', '0', '53', '0.98', '0', '1', '0', '0', '1', '0', 'C', 'EspeceA'] + lineNumber = 1 + + expChrom = "chr1" + expPosition = "1804" + expRef = "T" + expCns = "C" + expReadsRef = "0" + expReadsVar = "1" + expVarFreq = "100%" + expStrandsRef = "0" + expStrandsVar = "1" + expQualRef = "0" + expQualVar = "53" + expPValue = "0.98" + expMapQualRef = "0" + expMapQualVar = "1" + expReadsRefPlus = "0" + expReadsRefMinus = "0" + expReadsVarPlus = "1" + expReadsVarMinus = "0" + expVar = "C" + expTag = "EspeceA" + + varscanHit = VarscanHit_v2_2_8_WithTag() + varscanHit.setAttributes(lResults, lineNumber) + + obsChrom = varscanHit.getChrom() + obsPosition = varscanHit.getPosition() + obsRef = varscanHit.getRef() + obsCns = varscanHit.getCns() + obsReadsRef = varscanHit.getReadsRef() + obsReadsVar = varscanHit.getReadsVar() + obsVarFreq = varscanHit.getVarFreq() + obsStrandsRef = varscanHit.getStrandsRef() + obsStrandsVar = varscanHit.getStrandsVar() + obsQualRef = varscanHit.getQualRef() + obsQualVar = varscanHit.getQualVar() + obsPValue = varscanHit.getPValue() + obsMapQualRef = varscanHit.getMapQualRef() + obsMapQualVar = varscanHit.getMapQualVar() + obsReadsRefPlus = varscanHit.getReadsRefPlus() + obsReadsRefMinus = varscanHit.getReadsRefMinus() + obsReadsVarPlus = varscanHit.getReadsVarPlus() + obsReadsVarMinus = varscanHit.getReadsVarMinus() + obsVar = varscanHit.getVar() + obsTag = varscanHit.getTag() + + self.assertEquals(expChrom, obsChrom) + self.assertEquals(expPosition, obsPosition) + self.assertEquals(expRef, obsRef) + self.assertEquals(expCns, obsCns) + self.assertEquals(expReadsRef, obsReadsRef) + self.assertEquals(expReadsVar, obsReadsVar) + self.assertEquals(expVarFreq, obsVarFreq) + self.assertEquals(expStrandsRef, obsStrandsRef) + self.assertEquals(expStrandsVar, obsStrandsVar) + self.assertEquals(expQualRef, obsQualRef) + self.assertEquals(expQualVar, obsQualVar) + self.assertEquals(expPValue, obsPValue) + self.assertEquals(expMapQualRef, obsMapQualRef) + self.assertEquals(expMapQualVar, obsMapQualVar) + self.assertEquals(expReadsRefPlus, obsReadsRefPlus) + self.assertEquals(expReadsRefMinus, obsReadsRefMinus) + self.assertEquals(expReadsVarPlus, obsReadsVarPlus) + self.assertEquals(expReadsVarMinus, obsReadsVarMinus) + self.assertEquals(expVar, obsVar) + self.assertEquals(expTag, obsTag) + + def test_setAttributes_empty_chrom(self): + lResults = ['', '1804', 'T', 'C', '0', '1', '100%', '0', '1', '0', '53', '0.98', '0', '1', '0', '0', '1', '0', 'C', 'EspeceA'] + lineNumber = 1 + + varscanHit = VarscanHit_v2_2_8_WithTag() + checkerExceptionInstance = None + try: + varscanHit.setAttributes(lResults, lineNumber) + except CheckerException, e: + checkerExceptionInstance = e + + expMessage = "The field Chrom is empty in varscan file in line 1" + obsMessage = checkerExceptionInstance.msg + + self.assertEquals(expMessage, obsMessage) + + def test_setAttributes_empty_position(self): + lResults = ['chr1', '', 'T', 'C', '0', '1', '100%', '0', '1', '0', '53', '0.98', '0', '1', '0', '0', '1', '0', 'C', 'EspeceA'] + lineNumber = 1 + + varscanHit = VarscanHit_v2_2_8_WithTag() + checkerExceptionInstance = None + try: + varscanHit.setAttributes(lResults, lineNumber) + except CheckerException, e: + checkerExceptionInstance = e + + expMessage = "The field Position is empty in varscan file in line 1" + obsMessage = checkerExceptionInstance.msg + + self.assertEquals(expMessage, obsMessage) + + def test_setAttributes_empty_ref(self): + lResults = ['chr1', '1000', '', 'C', '0', '1', '100%', '0', '1', '0', '53', '0.98', '0', '1', '0', '0', '1', '0', 'C', 'EspeceA'] + lineNumber = 1 + + varscanHit = VarscanHit_v2_2_8_WithTag() + checkerExceptionInstance = None + try: + varscanHit.setAttributes(lResults, lineNumber) + except CheckerException, e: + checkerExceptionInstance = e + + expMessage = "The field Ref is empty in varscan file in line 1" + obsMessage = checkerExceptionInstance.msg + + self.assertEquals(expMessage, obsMessage) + + def test_setAttributes_empty_cns(self): + lResults = ['chr1', '1000', 'T', '', '0', '1', '100%', '0', '1', '0', '53', '0.98', '0', '1', '0', '0', '1', '0', 'C', 'EspeceA'] + lineNumber = 1 + + varscanHit = VarscanHit_v2_2_8_WithTag() + checkerExceptionInstance = None + try: + varscanHit.setAttributes(lResults, lineNumber) + except CheckerException, e: + checkerExceptionInstance = e + + expMessage = "The field Cons is empty in varscan file in line 1" + obsMessage = checkerExceptionInstance.msg + + self.assertEquals(expMessage, obsMessage) + + def test_setAttributes_empty_var(self): + lResults = ['chr1', '1000', 'T', 'C', '0', '1', '100%', '0', '1', '0', '53', '0.98', '0', '1', '0', '0', '1', '0', '', 'EspeceA'] + lineNumber = 1 + + varscanHit = VarscanHit_v2_2_8_WithTag() + checkerExceptionInstance = None + try: + varscanHit.setAttributes(lResults, lineNumber) + except CheckerException, e: + checkerExceptionInstance = e + + expMessage = "The field varAllele is empty in varscan file in line 1" + obsMessage = checkerExceptionInstance.msg + + self.assertEquals(expMessage, obsMessage) + + def test__eq__notEquals(self): + varscanHit1 = VarscanHit_v2_2_8_WithTag() + varscanHit1.setChrom('C02HBa0291P19_LR48') + varscanHit1.setPosition('34') + varscanHit1.setRef('A') + varscanHit1.setCns('T') + varscanHit1.setVar('T') + varscanHit1.setVar('EspeceA') + + varscanHit2 = VarscanHit_v2_2_8_WithTag() + varscanHit2.setChrom('C02HBa0291P19_LR48') + varscanHit2.setPosition('34') + varscanHit2.setRef('A') + varscanHit2.setCns('T') + varscanHit2.setVar('T') + varscanHit2.setVar('EspeceB') + + self.assertFalse(varscanHit1 == varscanHit2) + + def test__eq__Equals(self): + varscanHit1 = VarscanHit_v2_2_8_WithTag() + varscanHit1.setChrom('C02HBa0291P19_LR48') + varscanHit1.setPosition('34') + varscanHit1.setRef('A') + varscanHit1.setCns('T') + varscanHit1.setVar('T') + varscanHit1.setVar('EspeceA') + + varscanHit2 = VarscanHit_v2_2_8_WithTag() + varscanHit2.setChrom('C02HBa0291P19_LR48') + varscanHit2.setPosition('34') + varscanHit2.setRef('A') + varscanHit2.setCns('T') + varscanHit2.setVar('T') + varscanHit2.setVar('EspeceA') + + self.assertTrue(varscanHit1 == varscanHit2) + + def test_convertVarscanHit_v2_2_8_WithTag_To_VarscanHit_WithTag(self): + line = "chr1\t1804\tT\tC\t0\t1\t100%\t0\t1\t0\t53\t0.98\t0\t1\t0\t0\t1\t0\tC\tEspeceA\n" + iVarscanHit_v2_2_8_WithTag = VarscanHit_v2_2_8_WithTag() + iVarscanHit_v2_2_8_WithTag.setAttributesFromString(line) + obsVarcanHit_WithTag = iVarscanHit_v2_2_8_WithTag.convertVarscanHit_v2_2_8_WithTag_To_VarscanHit_WithTag() + + line = "chr1\t1804\tT\tC\t0\t1\t100%\t0\t1\t0\t53\t0.98\tEspeceA\n" + expVarcanHit_WithTag = VarscanHit_WithTag() + expVarcanHit_WithTag.setAttributesFromString(line) + + self.assertEquals(expVarcanHit_WithTag, obsVarcanHit_WithTag) + +if __name__ == "__main__": + unittest.main() \ No newline at end of file